Skip to content

Commit feed3a6

Browse files
refactorize: refactor the embedbox
1 parent df2907a commit feed3a6

36 files changed

Lines changed: 7045 additions & 4139 deletions

.github/workflows/deploy.yml

Lines changed: 24 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,42 @@
1-
# 工作流名称
2-
name: 自动部署 MkDocs
1+
name: Deploy VitePress
32

4-
# 触发条件:推送到 main 分支
53
on:
64
push:
75
branches:
86
- main
9-
10-
# 允许手动触发
117
workflow_dispatch:
128

13-
# 设置权限
149
permissions:
15-
contents: write # 允许推送到 gh-pages 分支
10+
contents: write
1611

1712
jobs:
1813
deploy:
1914
runs-on: ubuntu-latest
20-
15+
2116
steps:
22-
# 1. 检出代码
23-
- name: 检出仓库
17+
- name: Checkout
2418
uses: actions/checkout@v4
2519
with:
26-
fetch-depth: 0 # 获取完整历史,显示文章修改时间
27-
28-
# 2. 设置 Python
29-
- name: 设置 Python
30-
uses: actions/setup-python@v5
20+
fetch-depth: 0
21+
22+
- name: Setup Node.js
23+
uses: actions/setup-node@v4
24+
with:
25+
node-version: '22'
26+
27+
- name: Setup pnpm
28+
uses: pnpm/action-setup@v4
3129
with:
32-
python-version: "3.11"
33-
# cache: 'pip' # 缓存依赖,加速构建
34-
35-
# 3. 安装依赖
36-
- name: 安装依赖
37-
run: |
38-
pip install mkdocs-material
39-
pip install mkdocs-awesome-pages-plugin
40-
pip install mkdocs-git-revision-date-localized-plugin
41-
42-
# 4. 构建网站
43-
- name: 构建网站
44-
run: mkdocs build --clean
45-
46-
# 5. 自动部署到 gh-pages 分支(这一步会自动触发 GitHub Pages)
47-
- name: 部署到 GitHub Pages
30+
version: 10
31+
32+
- name: Install dependencies
33+
run: pnpm install --frozen-lockfile
34+
35+
- name: Build
36+
run: pnpm build
37+
38+
- name: Deploy to GitHub Pages
4839
uses: peaceiris/actions-gh-pages@v4
4940
with:
50-
github_token: ${{ secrets.GITHUB_TOKEN }} # GitHub 自动提供的 token
51-
publish_dir: ./site # MkDocs 构建输出目录
41+
github_token: ${{ secrets.GITHUB_TOKEN }}
42+
publish_dir: ./site/.vitepress/dist

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
.claude/
2+
3+
node_modules/
4+
site/.vitepress/dist/
5+
site/.vitepress/cache/
6+
site/.vitepress/.build-cache/
7+
site/.vitepress/.build-tmp/
8+
*.tgz
9+
.pnpm-store/
10+

README.md

Lines changed: 32 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,32 @@
1-
# Tutorial_EmbeddedCommonTools
2-
3-
本教程创建于: 2025-12-09
4-
作者: Charliechen114514
5-
联系方式: 725610365@qq.com
6-
7-
> 本项目隶属于组织[Awesome-Embedded-Learning-Studio](https://github.com/Awesome-Embedded-Learning-Studio)的文档教程
8-
9-
## 快速说明
10-
11-
> codes_and_assets下放置着本教程所有的代码, 或硬件电路图或者是PCB文件等
12-
> 具体的细节,请到[具体的说明步骤🖱](./codes_and_assets/instractions.md)
13-
> tutorial下放置着教程的Markdown文件, 您可以使用其他Markdown浏览器阅读这些教程
14-
> 您如果不知道从何开始,请到[从这里开始!🖱](./tutorial/index.md)查看!
15-
16-
## 这是什么?
17-
18-
## 快速目录
1+
# EmbedBox
2+
3+
> 嵌入式开发通用工具链教程——不管走哪条嵌入式航线,都要先会用的工具:终端 / Git / Markdown / GCC / Make / CMake / GDB / 交叉编译 / 串口 / Docker / QEMU。
4+
5+
本教程创建于 2025-12-09 · 作者 Charliechen114514 · 联系方式 725610365@qq.com
6+
7+
本项目隶属于组织 [Awesome-Embedded-Learning-Studio](https://github.com/Awesome-Embedded-Learning-Studio) 的文档教程体系。
8+
9+
## 这是什么?
10+
11+
EmbedBox 是面向嵌入式开发者的「公共语言」入门坡道:在进入 AwesomeQt / ModernCPP / PenguinLab / 各 forge 之前,先把终端、Git、Markdown、编译链、CMake、GDB、交叉编译、串口这些通用工具学会。它只负责把工具教透,不替中心站 [Awesome-Embedded](https://github.com/Awesome-Embedded-Learning-Studio/Awesome-Embedded) 做导航。
12+
13+
## 快速目录
14+
15+
- [WSL2 + Linux + VS Code 远程开发](./tutorial/WSL/wsl.md)
16+
- [Markdown 零基础入门](./tutorial/markdown/markdown.md)
17+
- [Git 团队协作完全入门指南](./tutorial/git/index.md)(分 7 篇)
18+
19+
## 本地预览 / 构建
20+
21+
站点引擎为 [VitePress](https://vitepress.dev),需要 Node 22 + pnpm 10:
22+
23+
```bash
24+
pnpm install # 安装依赖
25+
pnpm dev # 本地预览(默认 http://localhost:5173/EmbedBox/)
26+
pnpm build # 构建到 site/.vitepress/dist
27+
pnpm preview # 预览构建产物
28+
```
29+
30+
教程正文 Markdown 在 [`tutorial/`](./tutorial/index.md);配套的示例代码 / 硬件电路图 / PCB 等资产放在 [`examples/`](./examples/instructions.md),规则见该目录说明。
31+
32+
推送到 `main` 分支会自动经 GitHub Actions 构建并部署到 GitHub Pages。

codes_and_assets/instractions.md

Whitespace-only changes.

examples/instructions.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# examples — 配套资产说明
2+
3+
本目录存放教程正文中引用的配套资产:示例代码、硬件电路图、PCB 文件、数据手册片段等。
4+
5+
## 命名约定
6+
7+
- 一个教程章节对应的资产,放在以该章命名的子目录里(如 `git/``wsl/`)。
8+
- 文件名用英文小写 + 连字符(`kebab-case`),避免中文 / 空格——与站点「目录全英文」约定一致。
9+
- 代码文件带语言后缀(`.c``.py``.dts`);图片用 `.png` / `.svg`
10+
11+
## 与教程正文的关系
12+
13+
- 正文 Markdown 在 `tutorial/`,通过相对路径引用本目录的资产。
14+
- 本目录的文件****进 VitePress 的 `srcDir`(不会被渲染成页面),只作为被引用的静态资源。
15+
16+
> 本目录原名 `codes_and_assets/`,已改名 `examples/` 并修正文件名拼写(原 `instractions.md``instructions.md`)。

mkdocs.yml

Lines changed: 0 additions & 209 deletions
This file was deleted.

package.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"name": "embedbox-docs",
3+
"version": "0.0.1",
4+
"private": true,
5+
"type": "module",
6+
"scripts": {
7+
"dev": "vitepress dev site",
8+
"build": "vitepress build site",
9+
"preview": "vitepress preview site"
10+
},
11+
"devDependencies": {
12+
"@types/node": "^22.15.0",
13+
"tsx": "^4.21.0",
14+
"vitepress": "^1.6.4",
15+
"vue": "^3.5.34"
16+
},
17+
"dependencies": {
18+
"minisearch": "^7.2.0"
19+
}
20+
}

0 commit comments

Comments
 (0)