Integrated Product Development Platform for Structural Design
Project description
endo
Integrated Product Development Platform for Structural Design
endo 是一个面向结构设计领域的集成产品开发平台,提供需求管理、追溯矩阵、测试管理与文档导出能力。
功能特性
- 需求管理:层级需求树、版本控制、评审流程
- 追溯矩阵:需求间双向追溯关系(衍生/依赖/验证/满足)
- 测试管理:测试用例库、执行记录、缺陷跟踪
- 附件管理:多态关联文件上传/下载(项目/需求/测试用例)
- 文档导出:需求规格书 PDF、追溯矩阵 Excel、测试报告 PDF
- 插件架构:模块化设计,按需启用功能插件
- 影响分析:需求变更影响范围分析
快速开始
安装
pip install endo
启动服务
# 启动后端 API 服务(默认 127.0.0.1:8000)
ipd
# 指定监听地址和端口
ipd serve --host 0.0.0.0 --port 8080
# 开发模式(自动重载)
ipd serve --reload
访问 API 文档:http://127.0.0.1:8000/docs
开发模式(前后端联调)
在源码仓库内执行:
ipd dev # 同时启动后端(8000)和前端(5173)
技术栈
后端
- FastAPI + Uvicorn(异步 Web 框架)
- SQLAlchemy 2.0 + Alembic(ORM 与迁移)
- Pydantic v2(数据校验)
- ReportLab / OpenPyXL(PDF / Excel 生成)
前端
- React 18 + TypeScript
- Ant Design 5(UI 组件库)
- Vite(构建工具)
项目结构
endo/
├── backend/
│ └── endo/
│ ├── api/v1/ # REST API 端点
│ ├── core/ # 配置、数据库、插件注册
│ ├── models/ # SQLAlchemy 数据模型
│ ├── schemas/ # Pydantic 校验模型
│ ├── services/ # 业务逻辑(导出、解析)
│ ├── plugins/ # 功能插件
│ └── main.py # 应用入口
├── frontend/ # React 前端
├── tests/ # 测试
└── pyproject.toml
插件体系
endo 采用插件架构,核心功能以插件形式注册:
| 插件 | 功能 |
|---|---|
project |
项目管理 |
requirement |
需求管理 + 追溯关系 |
test |
测试用例 + 执行记录 |
analysis |
影响分析 |
attachment |
文件附件管理 |
export |
文档导出(PDF/Excel) |
开发
# 安装开发依赖
uv sync --extra dev
# 运行测试
ipd test
# 代码检查
ipd lint
# 构建前后端
ipd build
系统要求
- 操作系统:Windows 10+ / macOS 10.15+ / Linux
- Python:3.9+
- Node.js:20+(仅开发前端时需要)
许可证
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
endo-0.3.0.tar.gz
(439.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
endo-0.3.0-py3-none-any.whl
(617.6 kB
view details)
File details
Details for the file endo-0.3.0.tar.gz.
File metadata
- Download URL: endo-0.3.0.tar.gz
- Upload date:
- Size: 439.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Hatch/1.17.0 {"ci":null,"cpu":"AMD64","implementation":{"name":"CPython","version":"3.13.13"},"installer":{"name":"hatch","version":"1.17.0"},"openssl_version":"OpenSSL 3.5.6 7 Apr 2026","python":"3.13.13","system":{"name":"Windows","release":"11"}} HTTPX2/2.4.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd7c7eff6fb548c1ffd3a354eed2745065893d295355f982fea876540fd892cc
|
|
| MD5 |
74c455cc6065e975a1a78fa238743ccd
|
|
| BLAKE2b-256 |
436eab8b62b14941852cf7b7d5a7aa85bc53dbce5c3c356215264ad782d5032e
|
File details
Details for the file endo-0.3.0-py3-none-any.whl.
File metadata
- Download URL: endo-0.3.0-py3-none-any.whl
- Upload date:
- Size: 617.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: Hatch/1.17.0 {"ci":null,"cpu":"AMD64","implementation":{"name":"CPython","version":"3.13.13"},"installer":{"name":"hatch","version":"1.17.0"},"openssl_version":"OpenSSL 3.5.6 7 Apr 2026","python":"3.13.13","system":{"name":"Windows","release":"11"}} HTTPX2/2.4.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
abac7ad2e6e63cfbd4276ed63083f4a857c5218de4c0aeac5b564031be3dd298
|
|
| MD5 |
29f36c3a6420d0ce129dfbe26f11e591
|
|
| BLAKE2b-256 |
b414b2f4023cac2ba60eac3fc906b845ce09ae79b8932ac86fd5a3b6202e65cf
|