Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions _adk
12 changes: 12 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,18 @@ collections:
posts_en:
output: true
permalink: /en/:year/:month/:day/:title/
adk:
output: true
permalink: /adk/:path/

defaults:
- scope:
path: ""
type: adk
values:
layout: collection-chapter
collection_label: ADK
lang: ko

# BUILD SETTINGS
markdown: kramdown
Expand Down
1 change: 1 addition & 0 deletions _includes/header.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ <h1 class="site-title">
{% else %}
{% assign site_pages = site.pages %}
{% endif %}

{% for page in site_pages %}
{% if page.title and page.hide != true %}
<li>
Expand Down
62 changes: 62 additions & 0 deletions _layouts/collection-chapter.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
layout: default
---

{% assign collection_name = page.collection %}
{% assign sort_key = page.collection_sort_key | default: 'order' %}
{% assign collection_items = site[collection_name] | sort: sort_key %}
{% assign collection_label = page.collection_label | default: collection_name | replace: '_', ' ' | capitalize %}

<article class="guide-wrapper">
<aside class="guide-sidebar">
<h2 class="guide-sidebar-title">{{ collection_label }}</h2>
<ol class="guide-chapter-list">
{% for entry in collection_items %}
<li class="guide-chapter-item{% if entry.url == page.url %} is-active{% endif %}">
<a href="{{ entry.url | relative_url }}">{{ entry.title }}</a>
</li>
{% endfor %}
</ol>
</aside>

<section class="guide-content">
<header class="guide-content-header">
<h1>{{ page.title }}</h1>
{% if page.date %}
<p class="guide-meta">{{ page.date | date: "%Y.%m.%d" }}</p>
{% endif %}
</header>
<div class="guide-markdown">
{{ content }}
</div>

{% if collection_items %}
<nav class="guide-prev-next">
{% assign prev_entry = nil %}
{% assign next_entry = nil %}
{% for entry in collection_items %}
{% if entry.url == page.url %}
{% assign next_index = forloop.index0 | plus: 1 %}
{% if next_index < collection_items.size %}
{% assign next_entry = collection_items[next_index] %}
{% endif %}
{% break %}
{% endif %}
{% assign prev_entry = entry %}
{% endfor %}

{% if prev_entry %}
<a class="guide-nav-link prev" href="{{ prev_entry.url | relative_url }}">
← {{ prev_entry.title }}
</a>
{% endif %}

{% if next_entry %}
<a class="guide-nav-link next" href="{{ next_entry.url | relative_url }}">
{{ next_entry.title }} →
</a>
{% endif %}
</nav>
{% endif %}
</section>
</article>
36 changes: 36 additions & 0 deletions _layouts/collection-index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
layout: default
---

{% assign collection_name = page.collection | default: page.collection_name %}
{% assign index_sort_key = page.collection_sort_key | default: 'order' %}
{% assign collection_entries = site[collection_name] | sort: index_sort_key %}
{% assign collection_label = page.collection_label | default: collection_name | replace: '_', ' ' | capitalize %}

<section class="guide-index">
<header class="guide-index-header">
<h1>{{ page.title | default: collection_label }}</h1>
{% if page.description %}
<p class="guide-index-description">{{ page.description }}</p>
{% endif %}
</header>

<ol class="guide-index-list">
{% for entry in collection_entries %}
<li class="guide-index-item">
<div class="guide-index-item-body">
<span class="guide-index-order">{{ forloop.index }}.</span>
<div class="guide-index-text">
<a class="guide-index-title" href="{{ entry.url | relative_url }}">{{ entry.title }}</a>
{% if entry.subtitle %}
<p class="guide-index-subtitle">{{ entry.subtitle }}</p>
{% endif %}
{% if entry.description %}
<p class="guide-index-summary">{{ entry.description }}</p>
{% endif %}
</div>
</div>
</li>
{% endfor %}
</ol>
</section>
14 changes: 14 additions & 0 deletions _layouts/home.html
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,20 @@ <h1 class="posts-title">{{ site.theme_settings.title }}</h1>
<script>
document.addEventListener('DOMContentLoaded', function() {
const postsData = JSON.parse(document.getElementById('posts-data').textContent);
{% assign adk_chapters = site.adk | sort: 'order' %}
{% assign adk_first = adk_chapters | first %}
{% if adk_first and page.lang != "en" %}
postsData.unshift({
title: {{ "ADK 시리즈" | jsonify }},
subtitle: {{ adk_first.subtitle | default: "Google Agent Development Kit 단계별 가이드" | jsonify }},
url: {{ adk_first.url | relative_url | jsonify }},
excerpt: {{ adk_first.content | strip_html | truncatewords: 30 | jsonify }},
date: "",
author: {{ "ADK Series" | jsonify }},
"feature-img": {{ "assets/img/2025-10-10-adk/adk-social-card.png" | relative_url | jsonify }},
tags: {{ ["ADK"] | jsonify }}
});
{% endif %}
const postsGrid = document.getElementById('posts-grid');
const paginationContainer = document.getElementById('pagination-container');
const prevBtn = document.getElementById('prev-btn');
Expand Down
6 changes: 6 additions & 0 deletions _posts/_adk/01-introduction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: "1. ADK 소개"
subtitle: ""
order: 1
date: 2025-01-05
---
6 changes: 6 additions & 0 deletions _posts_en/01-introduction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
date: 2025-01-05
order: 1
subtitle: ''
title: 1. Introduction to ADK
---
6 changes: 6 additions & 0 deletions _posts_en/_adk/01-introduction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: "1. ADK Intro"
subtitle: ""
order: 1
date: 2025-01-05
---
6 changes: 3 additions & 3 deletions _sass/base/_variables.scss
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ $padding-x-small: 5% !default;
// Brand colours
$brand-color: #fff !default;
$background-color: #fff !default;
$border-color: rgba(0, 0, 0, 0.05) !default; // 더 연한 보더
$border-color: rgba(0, 0, 0, 0.05) !default; // Softer border

// Typography colours
$text-color: #333333 !default; // 더 진한 텍스트
$text-color: #333333 !default; // Darker body text
$link-color: #35C5F0 !default;
$selection-color: #E8F7FF !default; // 블루 계열 선택 색상
$selection-color: #E8F7FF !default; // Light blue selection highlight

// Tags color
$tags-color: #35C5F0 !default;
Expand Down
2 changes: 1 addition & 1 deletion _sass/layouts/_index.scss
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
padding: 60px 40px 0 40px;
}

// 헤더 영역
// Header section
.posts-header {
margin-bottom: 60px;

Expand Down
2 changes: 1 addition & 1 deletion _sass/layouts/_posts.scss
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ header {
}

#next-post {
/* 오른쪽 박스 */
/* Right column */
}
}

Expand Down
16 changes: 8 additions & 8 deletions _sass/layouts/_tags.scss
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
// 기존 스타일 제거됨 - 새로운 모던 스타일로 교체
// Replace legacy styles with modern layout

// 태그 페이지 컨테이너
// Tag page container
.tags-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}

// 태그 네비게이션 섹션
// Tag navigation section
.tags-navigation {
background: #f8f9fa;
border-radius: 12px;
Expand Down Expand Up @@ -58,7 +58,7 @@
}
}

// 태그 콘텐츠 섹션
// Tag content section
.tags-content {
.tag-section {
margin-bottom: 4rem;
Expand Down Expand Up @@ -104,15 +104,15 @@
}
}

// 포스트 그리드
// Post grid
.posts-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
gap: 1.5rem;
margin-top: 2rem;
}

// 포스트 카드
// Post card
.tag-post-card {
background: white;
border: 1px solid $border-color;
Expand Down Expand Up @@ -167,7 +167,7 @@
}

&::before {
content: '📅';
content: "\1F4C5";
margin-right: 0.5rem;
}
}
Expand All @@ -183,7 +183,7 @@
}
}

// 반응형 디자인
// Responsive design
@media (max-width: 768px) {
.tags-container {
padding: 0 15px;
Expand Down
Loading