arch-design-agent-skill-das.../design/technology-architecture/00-technology-selection.md

46 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
doc_id: DOC-TA-000
title: 技术选型说明
version: 0.1.0
status: reviewed
owners:
- 林然
upstream:
- ../business-architecture/01-scope-and-goals.md
downstream:
- ./01-runtime-topology.md
- ./01-runtime-components.csv
updated_at: 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 文件
- 关系图和扫描结果是运行时计算,不需要持久化