Skip to content

Commit a92c950

Browse files
committed
feat: migrate blog from Jekyll to Astro
- Complete migration from Jekyll to Astro framework - Add Giscus comment system with Korean/English support - Add language toggle (KO/EN) in headers and blog posts - Add GitHub Actions workflow for auto-translating Korean posts - Remove old Jekyll files and structure
1 parent 517ee88 commit a92c950

File tree

509 files changed

+9346
-7052
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

509 files changed

+9346
-7052
lines changed

.github/workflows/deploy.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Deploy to GitHub Pages
2+
3+
on:
4+
push:
5+
branches: [main]
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: read
10+
pages: write
11+
id-token: write
12+
13+
concurrency:
14+
group: "pages"
15+
cancel-in-progress: false
16+
17+
jobs:
18+
build:
19+
runs-on: ubuntu-latest
20+
steps:
21+
- name: Checkout
22+
uses: actions/checkout@v4
23+
24+
- name: Setup Node
25+
uses: actions/setup-node@v4
26+
with:
27+
node-version: "20"
28+
cache: npm
29+
30+
- name: Setup Pages
31+
uses: actions/configure-pages@v4
32+
33+
- name: Install dependencies
34+
run: npm ci
35+
36+
- name: Build with Astro
37+
run: npm run build
38+
39+
- name: Upload artifact
40+
uses: actions/upload-pages-artifact@v3
41+
with:
42+
path: ./dist
43+
44+
deploy:
45+
environment:
46+
name: github-pages
47+
url: ${{ steps.deployment.outputs.page_url }}
48+
runs-on: ubuntu-latest
49+
needs: build
50+
steps:
51+
- name: Deploy to GitHub Pages
52+
id: deployment
53+
uses: actions/deploy-pages@v4

.github/workflows/jekyll-docker.yml

Lines changed: 0 additions & 55 deletions
This file was deleted.

.github/workflows/make-stiemap-rss.yml

Lines changed: 0 additions & 33 deletions
This file was deleted.

.github/workflows/translate-to-english.yml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
if (res.data.length < per_page) break;
3535
page += 1;
3636
}
37-
const posts = files.filter(f => f.startsWith('_posts/') && f.endsWith('.md'));
37+
const posts = files.filter(f => f.startsWith('src/content/blog/') && f.endsWith('.md'));
3838
core.setOutput('posts', posts.join('\n'));
3939
4040
- name: Set ONLY_FILES env
@@ -54,7 +54,7 @@ jobs:
5454
if: steps.changes.outputs.posts != ''
5555
run: |
5656
python -m pip install --upgrade pip
57-
pip install openai PyYAML python-frontmatter python-slugify
57+
pip install openai PyYAML python-frontmatter
5858
5959
- name: Generate English translations
6060
if: steps.changes.outputs.posts != ''
@@ -69,6 +69,4 @@ jobs:
6969
uses: stefanzweifel/git-auto-commit-action@v5
7070
with:
7171
commit_message: "chore: add English translations for PR #${{ github.event.pull_request.number }}"
72-
file_pattern: _posts_en/**/*.md
73-
74-
72+
file_pattern: src/content/blog-en/**/*.md

.gitignore

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,30 @@
1-
*.DS_Store
2-
*.gem
3-
.bundle
4-
.sass-cache
5-
_site
6-
Gemfile.lock
7-
vendor/
8-
.playwright-mcp/*
1+
# build output
2+
dist/
3+
# generated types
4+
.astro/
5+
6+
# dependencies
7+
node_modules/
8+
9+
# logs
10+
npm-debug.log*
11+
yarn-debug.log*
12+
yarn-error.log*
13+
pnpm-debug.log*
14+
15+
16+
# environment variables
17+
.env
18+
.env.production
19+
20+
# macOS-specific files
21+
.DS_Store
22+
23+
# jetbrains setting folder
24+
.idea/
25+
26+
# previous jekyll files (migration backup)
27+
.previous/
28+
.playwright-mcp/
29+
.claude/
30+
.vscode/

404.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

Gemfile

Lines changed: 0 additions & 4 deletions
This file was deleted.

LICENSE

Lines changed: 0 additions & 21 deletions
This file was deleted.

0 commit comments

Comments
 (0)