系统要求
| 组件 | 最低版本 |
|---|---|
| Node.js | >= 18.0 |
| npm | >= 9.0 |
| 磁盘空间 | >= 500 MB(含 node_modules) |
| 操作系统 | Windows / macOS / Linux |
安装 Node.js
推荐使用 nvm-windows (Windows) 或 nvm (macOS/Linux) 管理 Node.js 版本:
TERMINALbash
# 安装并使用 Node.js 22 LTSnvm install 22nvm use 22node -v获取源代码
本项目源码不对外公开,如有本地构建需求,请通过内部渠道获取源码压缩包(project-source.tar.gz),解压后进入项目根目录:
TERMINALbash
# 将源码压缩包解压到当前目录tar -xzf project-source.tar.gzcd ict-learning-inn安装依赖
TERMINALbash
npm install首次安装可能需要几分钟,取决于网络状况。
启动开发服务器
TERMINALbash
npm run dev默认在 http://localhost:4321 启动。修改源文件后自动热更新。
常用命令
| 命令 | 说明 |
|---|---|
npm run dev | 启动开发服务器 |
npm run build | 构建生产版本到 dist/,同时生成搜索索引 |
npm run preview | 本地预览生产构建 |
npm run astro | 直接调用 Astro CLI |
构建流程
npm run build 实际执行 scripts/build.js,该脚本完成:
- 运行
astro build生成静态页面到dist/ - 过滤 Shiki 语法高亮器的非关键警告
- 运行
generate-search-index.js扫描所有 MDX 文件生成搜索索引
开发配置
推荐编辑器
VS Code + 以下扩展:
- Astro (官方)
- MDX
- Tailwind CSS IntelliSense
内容集合注册
在 src/content.config.ts 中定义集合:
CODEtypescript
import { defineCollection, z } from 'astro:content';import { glob } from 'astro/loaders';const baseSchema = z.object({title: z.string(),description: z.string().optional(),tags: z.array(z.string()).optional(),// ... 更多字段});const myCollection = defineCollection({loader: glob({ pattern: "**/*.mdx", base: "./src/content/my-topic" }),schema: baseSchema,});export const collections = { 'my-collection': myCollection };然后在 sections.json 中关联 articleConfig 即可自动生成路由。