| doc_id |
title |
version |
status |
owners |
upstream |
downstream |
updated_at |
| DOC-TA-000 |
技术选型说明 |
0.1.0 |
reviewed |
|
| ../business-architecture/01-scope-and-goals.md |
|
| ./01-runtime-topology.md |
| ./01-runtime-components.csv |
|
2026-03-23 |
技术选型说明
详细选型清单见 ./00-technology-selection.csv。
核心决策
后端:Python 3.12 + FastAPI + uv
- 文件解析(CSV/MD/YAML/OpenAPI)是核心功能,Python 生态在这方面最成熟
- FastAPI 提供异步支持和自动 OpenAPI 文档
- uv 替代 pip+venv,依赖管理更快更可靠
前端:Vue 3 + TypeScript + Vite + Pinia
- 组合式 API 适合模块化的组件结构
- TypeScript 提供类型安全
- Pinia 作为 Vue 3 官方推荐的状态管理方案
关系图:D3.js
- 需要高度定制的可下钻分组图
- D3.js 灵活度最高,可以精确控制节点布局、分组、交互
- 学习曲线较陡,但这个项目的图交互是核心功能,值得投入
部署:Docker Compose
- 两个容器:Nginx(前端+反代)+ Python(后端)
- 无数据库容器
- Volume 挂载设计文件目录和代码仓库目录
不使用数据库
- 设计文件本身就是 single source of truth
- 项目注册用 JSON 文件
- 关系图和扫描结果是运行时计算,不需要持久化