系统要求

组件最低版本
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,该脚本完成:

  1. 运行 astro build 生成静态页面到 dist/
  2. 过滤 Shiki 语法高亮器的非关键警告
  3. 运行 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 即可自动生成路由。