本文档介绍了 roadmap.sh 仓库,这是一个旨在为开发者提供交互式学习路径和技能可视化的平台。它概述了项目的目的、主要组成部分和核心系统架构,以帮助新贡献者和用户理解代码库的整体结构。
有关系统架构的详细信息,包括组件交互和数据流,请参阅系统架构。
Roadmap.sh 是一个由社区驱动的平台,为不同技术和角色的开发者提供交互式路线图、指南和教育资源。该平台旨在帮助开发者:
来源:readme.md1-120 contributing.md1-20
下图展示了 roadmap.sh 平台的高级架构:
来源:readme.md1-90 src/components/Roadmaps/RoadmapsPage.tsx1-50
内容系统是 roadmap.sh 的核心,包括:
内容主要以 Markdown 和 JSON 格式编写,然后在构建时进行处理以生成交互式组件。
来源:src/components/Roadmaps/RoadmapsPage.tsx50-475 readme.md25-90
路线图分为以下主要类别:
| 类别 | 描述 | 示例 |
|---|---|---|
| 基于角色的 | 针对特定职位的综合指南 | 前端开发者、后端开发者、DevOps 工程师 |
| 基于技能的 | 针对特定技术的专注路径 | JavaScript、Python、React、Docker |
| 初学者 | 针对新手的简化路线图 | 前端初学者、后端初学者 |
| 最佳实践 | 针对特定领域的推荐方法 | 前端性能、API 安全 |
来源:src/components/Roadmaps/RoadmapsPage.tsx34-493 src/pages/get-started.astro45-100
进度跟踪系统允许用户将主题标记为:
所有用户的进度都存储在本地存储中,并为已认证用户同步到后端,从而实现跨设备的持久进度和团队进度共享。
来源:src/components/Roadmaps/RoadmapsPage.tsx496-562
团队协作系统支持:
团队可以使用默认路线图,也可以通过删除不相关的主题来创建定制化版本。
来源:src/components/Roadmaps/RoadmapsPage.tsx532-562
该平台包含人工智能驱动的功能,用于生成:
这些功能对已认证用户开放,并根据账户类型设有使用限制。
来源:src/components/Roadmaps/RoadmapsPageHeader.tsx1-44
该平台采用静态网站生成方法,使用:
来源:.github/workflows/refresh-roadmap-content-json.yml1-52 .github/workflows/upgrade-dependencies.yml1-51
Roadmap.sh 是一个开源项目,欢迎以下形式的贡献:
项目遵循结构化的贡献流程,并提供内容格式和质量指南。
来源:contributing.md1-147 readme.md109-150
在本地设置项目以进行开发:
git clone git@github.com:kamranahmedse/developer-roadmap.git
cd developer-roadmap
npm install
npm run dev
为了更快地克隆和更小的仓库大小
git clone --depth=1 https://github.com/kamranahmedse/developer-roadmap.git
来源:readme.md119-134 contributing.md128-142
roadmap.sh 内容受版权保护,使用条款具体如下:
该许可模式旨在防止滥用,同时鼓励合法的贡献。