dankertea51-cpu/Onboarder
GitHub: dankertea51-cpu/Onboarder
Onboarder 通过一条命令在本地分析任意代码库,快速生成交互式 HTML 导览报告,帮助新成员迅速理解项目架构、API、数据库结构与关键命令。
Stars: 0 | Forks: 0
# 🧭 Onboarder
### 任何代码库的 AI 指南。只需一条命令 —— 60 秒后你就能获得项目的交互式导览
**新项目不再可怕。** 不再需要花几周时间在别人的代码中摸索,即刻获取 —
架构、专家、API 和 DB 结构图、启动命令以及新手指南。





## ⚡ 快速开始
```
git clone https://gitlab.com/socksgiag/onboarder.git
node onboarder/onboarder.js /path/to/your/repo
```
搞定。几秒钟后,仓库根目录下会生成一个 `onboarder-report.html` 文件 —
在浏览器中打开它,开始你的探索之旅吧。 🎉
```
▸ Анализирую /home/dev/awesome-project ...
✔ Готово за 4.2 с
🧭 awesome-project (/home/dev/awesome-project)
Файлов: 1847 · строк: 213450 · модулей: 12 · эндпоинтов: 64
Языки: TypeScript, Python, SQL
Стек: Node.js, Docker Compose, GitLab CI
Эксперты: Alice (412), Bob (287), Carol (164)
Чек-лист новичка: 11 шагов
▸ Отчёт: /home/dev/awesome-project/onboarder-report.html
```
## 🎯 你将获得什么
| 板块 | 内容 |
|---|---|
| 🗺️ **架构** | 模块地图:规模、主要语言、从全局视角查看项目结构 |
| 👥 **专家** | 基于 git 历史记录,找出真正精通每个模块的人。让你知道该向谁请教 |
| 🔥 **核心文件** | 变更最频繁的文件 (churn) —— 项目的心脏,建议从这里开始阅读 |
| 🚀 **命令** | 如何安装、运行、测试和部署 —— 提取自 package.json、Makefile、CI |
| 🛰️ **API 结构图** | 所有 endpoint:Express、Flask、FastAPI、Django、Spring、Go、Rails |
| 🗄️ **DB 结构图** | Model 和表:Django、SQLAlchemy、ActiveRecord、Mongoose、Prisma、SQL 及数据库迁移 |
| ✅ **新手指南** | 根据特定仓库生成的专属首日计划。进度会自动保存 |
## 🔒 为什么它是安全的
- **100% 本地运行** —— 没有任何网络请求,代码不会离开你的电脑
- **0 依赖** —— 不需要执行 `npm install` 或 `pip install`,仅使用标准库
- **两个文件** —— 喝杯咖啡的功夫就能通读整个工具的源码
- **纯 HTML 报告** —— 只有一个 HTML 文件,可以直接在聊天软件中发给同事,无需服务器即可运行
## 🛠️ 工作原理
```
┌──────────────┐ запускает ┌──────────────┐ JSON ┌────────────────┐
│ onboarder.js │ ───────────▶ │ analyzer.py │ ──────────▶ │ HTML-отчёт 🌐 │
│ (CLI) │ │ глубокий ана- │ │ + сводка в CLI │
└──────────────┘ │ лиз кода + git │ └────────────────┘
└──────────────┘
```
1. **`analyzer.py`** 一次性遍历所有文件:识别语言、路由、DB Model 和技术栈。
通过 `git log` 计算出模块专家和最“活跃”的文件。
2. **`onboarder.js`** 将 JSON 转换为美观且独立的 HTML,并在终端中输出摘要。
针对大型 monorepo?内置了防护机制:限制 20,000 个文件,单文件不超过 512 KB,
自动忽略 `node_modules`/`vendor`/`dist` 等噪声目录。
## 📖 选项
```
node onboarder.js # анализ текущей директории
node onboarder.js /path/to/repo # анализ указанного репозитория
node onboarder.js . --out tour.html # своё имя отчёта
node onboarder.js . --json # сырой JSON (для скриптов и CI)
node onboarder.js --help # справка
```
`analyzer.py` 也可以单独使用:
```
python3 analyzer.py /path/to/repo --output analysis.json
```
## 🧩 支持的技术
**编程语言:** JavaScript、TypeScript、Python、Ruby、Go、Rust、Java、Kotlin、PHP、C#、C/C++、Swift、Vue、Svelte 等。
**API 框架:** Express · Flask · FastAPI · Django · Spring · Go (gin/echo/net.http) · Rails
**DB/ORM:** Django ORM · SQLAlchemy · ActiveRecord · Mongoose · Prisma · 纯 SQL · 迁移 (Django/Rails/Alembic)
**构建及 CI:** npm scripts · Makefile · Docker / Docker Compose · GitLab CI · Maven · Gradle · Cargo · Bundler
## 🗺️ 路线图
- [ ] 模块间的交互式依赖图
- [ ] `npx onboarder` —— 无需克隆即可运行
- [ ] 针对代码重构的“前/后”对比模式
- [ ] 导出为 Markdown 以便用于 wiki
- [ ] CI job 模板:每次发布时生成最新报告
## 📄 许可证
MIT —— 随你怎么用。
**为你省下了一周的入职适应时间?点个 ⭐ 吧**
*Onboarder —— 因为在项目中的第一天应该充满乐趣,而不是让人恐惧。*
标签:GNU通用公共许可证, MITM代理, Node.js, Python, SOC Prime, 代码分析, 代码库可视化, 凭证管理, 多模态安全, 开发工具, 开发者文档, 无后门, 逆向工具