Skip to content

inaku-Gyan/RM-EC-Tutorial-2026-Summer

Repository files navigation

RM Embedded C

RoboMaster Summer Camp 2026 嵌入式 C 开发课件合集。

本仓库使用 Slidev 维护多个课程幻灯片。每个课件都是一个独立的 deck,放在 decks/<slug>/ 下,并通过统一的首页构建和发布。

仓库结构

.
├── decks/
│   ├── foundation/
│   │   ├── deck.json          # deck 排序、路由和可见性
│   │   └── slides.md          # Slidev 课件入口
│   ├── rtos/
│   │   ├── deck.json
│   │   └── slides.md
│   └── ...
├── schemas/
│   └── deck.schema.json       # deck.json 校验说明
├── scripts/                   # 多 deck 开发、构建和导出脚本
├── site/                      # 课件索引页模板和样式
├── package.json               # 项目脚本和依赖
├── pnpm-lock.yaml             # 依赖锁定
└── .github/workflows/
    └── deploy-pages.yml       # GitHub Pages 自动部署

环境要求

  • Node.js 22
  • pnpm 11

如果本机已启用 Corepack,可以直接使用仓库声明的 pnpm 版本:

corepack enable
pnpm install

本地开发

安装依赖后启动完整课件站点:

pnpm run dev

访问课件索引:

http://localhost:3030

只开发某一个 deck 时,可以传入 deck slug:

pnpm run dev foundation

构建

构建首页、404 页面和所有 listed deck:

pnpm run build

构建产物位于 dist/

预览构建产物:

pnpm run preview

导出 PDF

导出指定 deck:

pnpm run export foundation

PDF 导出依赖 Playwright 的 Chromium。如果导出时报浏览器缺失,可以先安装浏览器:

pnpm exec playwright install chromium

部署

仓库已配置 GitHub Pages 工作流:

  • push 到 main 分支会自动构建并部署
  • 也可以在 GitHub Actions 页面手动触发 Deploy Pages
  • *.github.io 仓库会自动使用 /<repo-name>/ 作为 base path

部署入口见 .github/workflows/deploy-pages.yml

新增课件

  1. decks/ 下创建小写 slug 目录,例如 decks/stm32-peripheral-registers/
  2. 添加 slides.md,并在文件开头写 Slidev frontmatter。首页卡片会读取其中的 titleinfo
  3. 添加 deck.json
{
  "$schema": "../../schemas/deck.schema.json",
  "order": 2
}
  1. 运行 pnpm run dev 检查首页卡片和 deck 路由。

deck.json 支持:

  • order:首页排序,数字越小越靠前。
  • route:可选公开路由;不填时使用目录 slug。
  • visibility:可选值为 listedhiddendisabled;不填时为 listed

slug 和 route 只能使用小写字母、数字和单连字符。

维护建议

  • deck 标题和简介写在 slides.md frontmatter 的 titleinfo 中。
  • deck 排序、路由和发布状态写在同目录的 deck.json 中。
  • 提交前至少运行 pnpm run fmt:checkpnpm run build

About

Slides for embedded C development tutorials, 2026 Summer

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Contributors