Astro page routes with i18n support, dynamic routing for blog/project/resource
src/pages/├── blog/ # Blog posts and lists├── project/ # Project showcases├── resource/ # Resource collections├── og/ # Open Graph image generation├── zh/ # Chinese mirrored routes├── en/ # English mirrored routes├── index.astro # Home page└── [others].astro # Static pages (about, friend, 404)| Task | Location | Notes |
|---|---|---|
| Blog posts | src/pages/blog/[...slug].astro | Post content rendering |
| Blog list | src/pages/blog/[...page].astro | Paginated list |
| Project pages | src/pages/project/ | Project routes |
| Resource pages | src/pages/resource/ | Resource routes |
| OG images | src/pages/og/[...slug].png.ts | Dynamic OG generation |
| i18n | src/pages/zh/, src/pages/en/ | Mirrored routes |
| Symbol | Type | Location | Role |
|---|---|---|---|
| getStaticPaths | function | src/pages/blog/[...slug].astro | Generate post routes |
| getStaticPaths | function | src/pages/blog/[...page].astro | Generate paginated routes |
| OG Image | endpoint | src/pages/og/[...slug].png.ts | Satori-based image generation |
[...slug].astro or [...page].astro pattern.zh/ and en/ handle localized entry points.robots.txt and sitemap.xml are generated via .ts endpoints..astro files.