Skip to content

Repository files navigation

PCBTool.AI - 智能电路设计与教育平台

PCBTool.AI 是一个面向“学习硬件 + 展示作品”的 PCB 教育与作品平台:用模块化电路拼接工作流把硬件系统“像搭积木一样拼出来”,在拼接过程中实时校验关键工程规则,并把结果一键作品化,支持版本迭代与结构化点评。

App Screenshot

🎯 产品定位与闭环

  • 目标用户
    • 学习者:想系统学硬件、照着做,做完能展示/被点评
    • 创作者:有作品要版本化管理、对外展示、获取反馈/合作机会
  • 核心闭环:学 → 做(拼工作流)→ 传(上传资料)→ 展(作品页)→ 评(结构化点评)→ 迭代(版本)
  • 核心价值:模块资产化(可复用)+ 拼接可验证(规则检查)+ 结果可展示(作品表达)

🚀 核心功能

1. 模块化拼接工作流 (Workflow Editor)

  • 可视化拖拽拼接:从模块库选择电源、MCU、通信、传感、接口、保护等模块,像拼系统一样搭建方案。
  • 端口化连接:基于端口(Port)连接模块,覆盖电源(Power)、总线(Bus)、IO 等类型,并保留连接语义。
  • 实时校验 (MVP):连线即检查兼容性与风险提示
    • 电压匹配检测(如 5V 不能直连 3.3V)。
    • 总线类型匹配(I2C 只能连 I2C)。
    • 风险提示(如 I2C 总线缺失上拉电阻)。
  • 自动补齐“胶水件”:推荐必要的基础件(去耦、上拉、ESD/保护、下载接口等)。
  • 作品化输出:导出工作流 JSON + 推荐 BOM + 关键说明,并生成可分享的作品页章节结构。

2. 作品展示(硬件化表达)

  • 章节化作品页:用途/指标/架构/关键电路与元件/成本与功耗/调试笔记/失败复盘等结构化表达。
  • 电路讲解模式:作者标注讲解点,学习者按步骤走读电源链路、接口、模拟前端等关键部分。
  • 版本时间线:V1/V2/V3 的改动原因与结果沉淀,展示工程迭代能力。

3. 电路案例库 (Circuit Case Library)

  • 丰富案例:提供 Arduino、STM32、ESP32 等经典应用案例。
  • 一键应用:支持将案例直接应用为新项目,自动生成对应的工作流节点和连接,快速开始二次开发。
  • 多维度筛选:支持按应用场景、复杂度进行筛选。

4. 元器件数据库 (Component Database)

  • 详细参数:收录常用元器件(MCU、传感器、阻容感等)的详细规格和数据手册链接。
  • 搜索与过滤:支持按型号、类型、制造商、封装等维度快速查找。

5. 项目与版本管理

  • 项目创建:支持草稿保存、封面上传、需求描述(面向作品目标与需求卡片)。
  • 状态管理:草稿 -> 生成中 -> 进行中 -> 已完成。
  • 版本演进:支持方案/作品的版本化迭代与变更记录。
  • 本地持久化:所有项目数据存储在本地浏览器(Local Storage),数据安全且持久。

6. 现代化 UI/UX

  • 统一布局:基于 AppShell 的响应式布局,适配桌面和移动端。
  • 交互体验:模态框详情展示、实时错误提示、流畅的动画效果。

🧩 模块拼接的概念模型(最小语言)

  • 模块 Module:可复用功能块(电源/MCU/USB/BLE/传感/驱动/保护等)。
  • 端口 Port:模块对外接口(电源端口/总线端口/IO 端口),携带关键参数(电压范围、速率、电平、占用引脚等)。
  • 连接 Connection:端口到端口的连线,带语义(供电/数据/控制)。
  • 约束 Constraint:兼容性检查、风险提示、推荐补件的规则系统。
  • 工作流 Workflow:用户在画布上拼接并验证系统的过程与结果(可版本化、可分享、可复用为模板)。

✅ 工作流 MVP 边界(先跑通闭环)

  • 必须有:模块库(电源/MCU/通信/传感/接口/保护)+ 端口元数据 + 连线与校验 + 推荐补件 + 输出(工作流 JSON / 推荐 BOM / 作品页章节结构)
  • 暂不做:完整原理图/PCB 自动生成、深度 Gerber 交互、PI/SI/EMC 仿真

🧭 落地路径(从 0 到 1)

  • 阶段 A:模块与端口元数据化(可快速迭代扩展)
  • 阶段 B:画布拼接与实时校验(兼容/风险/不兼容)
  • 阶段 C:作品化与互动(作品页、版本、评论/点评、模板/Remix)
  • 阶段 D:导出与深集成(KiCad/EasyEDA、Gerber 预览与标注、AI 辅助)

🛠️ 技术栈

  • 前端框架: React 19 + TypeScript
  • 构建工具: Vite
  • 样式方案: Tailwind CSS + CSS Modules
  • 图标库: FontAwesome
  • 路由管理: React Router v6
  • 代码规范: ESLint + Prettier

📦 快速开始

1. 克隆项目

git clone <repository-url>
cd pcbtool-ai

2. 安装依赖

pnpm install

3. 启动开发服务器

pnpm dev

访问 http://localhost:5173 即可预览。

4. 构建生产版本

pnpm build

📂 目录结构

src/
├── components/     # 公共组件 (AppShell, ErrorBoundary 等)
├── domain/         # 领域模型 (Workflow, Project, ModuleCatalog)
├── lib/            # 工具库 (Storage, ProjectsStore)
├── pages/          # 页面组件
│   ├── p-dashboard/        # 工作台
│   ├── p-project_list/     # 项目列表
│   ├── p-project_create/   # 项目创建/编辑 (核心工作流)
│   ├── p-project_detail/   # 项目详情
│   ├── p-circuit_cases/    # 电路案例库
│   ├── p-component_db/     # 元器件数据库
│   ├── p-user_profile/     # 用户设置
│   └── ...
├── router/         # 路由配置
└── types/          # 全局类型定义

🌟 特性规划 (Roadmap)

  • 模块拼接 MVP(端口化连接 + 电源/总线校验)
  • 电路案例一键应用
  • 项目数据本地持久化
  • 作品库与互动(公开/私密、点赞/收藏、评论、分享)
  • 版本管理(修订时间线、变更记录)
  • 半自动结构化(BOM 解析、接口清单、成本估算区间)
  • Gerber/PCB 预览与标注(分层查看、测距、标注)
  • AI 辅助(作品讲解生成、AI 评审、作品上下文问答)
  • 导出原理图/PCB 文件(KiCad/EasyEDA 格式)
  • 社区协作(联合创作、招募队友、导师制评审)

📄 License

MIT License

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages