基于 Astro Paper 搭建的中文信息站
/
├── public/
├── scripts/
│ └── sync-content.sh # 构建前拉取文章仓库
├── src/
│ ├── assets/
│ │ └── icons/
│ │ └── images/
│ ├── components/
│ ├── layouts/
│ └── pages/ #页面管理
│ │ └── archives/
│ │ └── board/
│ │ └── posts/
│ │ └── news/
│ │ └── insights/
│ └── styles/
│ └── utils/
│ └── config.ts
│ └── constants.ts
│ └── content.config.ts
└── astro.config.tsAstro looks for .astro or .md files in the src/pages/ directory. Each page is exposed as a route based on its file name.
Any static assets, like images, can be placed in the public/ directory.
文章已经拆分到独立仓库 mitatis/zik-lab-content。构建时会先拉取到本地 .content/blog,再由 Astro Content Collections 读取。
内容仓库结构:
blog/
├── news/
├── insights/
└── weekly/Main Framework - Astro
Type Checking - TypeScript
Styling - TailwindCSS
UI/UX - Figma Design File
Static Search - FuseJS
Icons - Tablers
Code Formatting - Prettier
Deployment - Cloudflare Pages
Illustration in About Page - https://freesvgillustration.com
Linting - ESLint
本地部署&调试
# pnpm
pnpm create astro@latest --template satnaing/astro-paper
# npm
npm create astro@latest -- --template satnaing/astro-paper
# yarn
yarn create astro --template satnaing/astro-paper进入Dev
# install dependencies if you haven't done so in the previous step.
pnpm install
# start running the project, content will be synced first
pnpm run dev
# build static site, content will be synced first
pnpm run buildLicensed under the MIT License, Copyright © 2025