agnaldo4j/kanban-vision-api-kt
GitHub: agnaldo4j/kanban-vision-api-kt
基于 Kotlin 和 Ktor 构建的看板工作流模拟 REST API,以严格的六边形架构和全方位质量门禁(覆盖率、变异测试、架构适应度函数)为核心特色。
Stars: 1 | Forks: 0
[](https://github.com/agnaldo4j/kanban-vision-api-kt/actions/workflows/ci.yml)
[](https://codecov.io/gh/agnaldo4j/kanban-vision-api-kt)
[](LICENSE)
[](https://github.com/agnaldo4j/kanban-vision-api-kt/commits/main)
[](https://kotlinlang.org/)
[](https://ktor.io/)
[](https://gradle.org/)
[](https://adoptium.net/)
[](https://arrow-kt.io/)
[](https://insert-koin.io/)
[](https://kotest.io/docs/proptest/property-based-testing.html)
[](https://pitest.org/)
[](https://detekt.dev/)
[](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Architecture-Fitness-Functions)
[](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Security-Supply-Chain)
[](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Security-Supply-Chain)
[](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Performance-Load-Testing)
[](https://opentelemetry.io/)
[](k8s/)
[](https://github.com/agnaldo4j/kanban-vision-api-kt/pkgs/container/kanban-vision-api-kt)
# Kanban Vision API
## 功能
- **看板模拟** — 对看板、步骤和卡片进行建模;进行每日流程模拟
- **组织级隔离** — 各个组织的看板和场景相互隔离
- **整洁架构** — 纯领域层,端口和适配器,严格的依赖规则
- **函数式错误处理** — 全面使用 Arrow-kt 实现 `Either`
- **生产就绪** — JWT 认证、限流、Prometheus 指标、Grafana 面板、OTel 追踪
- **质量门禁** — 在每个 PR 上强制执行 Detekt + KtLint + JaCoCo ≥ 97% + PITest 变异测试 + Konsist 架构适应度函数
- **供应链安全** — CycloneDX SBOM + osv-scanner CVE 门禁会在每次镜像构建时进行拦截
- **基于属性的测试** — Kotest 生成器使用随机输入验证领域不变量
## 快速开始
```
# Clone
git clone https://github.com/agnaldo4j/kanban-vision-api-kt.git
cd kanban-vision-api-kt
# 运行 full stack (API + PostgreSQL + Prometheus + Grafana)
GRAFANA_ADMIN_PASSWORD=admin docker compose up --build
# Dev mode — 启用 POST /auth/token 以进行本地 JWT 生成
JWT_DEV_MODE=true GRAFANA_ADMIN_PASSWORD=admin docker compose up --build
```
| 服务 | URL |
|---|---|
| API | http://localhost:8080 |
| Swagger UI | http://localhost:8080/swagger |
| Prometheus | http://localhost:9090 |
| Grafana | http://localhost:3000 |
## 文档
| 页面 | 描述 |
|---|---|
| [架构](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Architecture) | 六边形架构、C4 图、类图(modules/domain)以及时序图 |
| [开发指南](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Development-Guide) | 本地设置、测试、质量门禁、故障排除 |
| [API 参考](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/API-Reference) | Endpoint、JWT 认证、OpenAPI |
| [可观测性](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Observability) | Prometheus、Grafana 面板、OTel Agent、结构化日志 |
| [运维](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Operations) | Docker、Kubernetes 清单、CI/CD、环境变量 |
| [质量分析](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Quality-Analysis) | 18 项技能评分卡(9.4/10)、差距路线图 |
| [安全供应链](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Security-Supply-Chain) | CycloneDX SBOM、osv-scanner CVE 门禁、例外策略、red-gate 演练手册 |
| [架构适应度函数](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Architecture-Fitness-Functions) | 在 CI 中强制执行六边形架构的 Konsist 规则 |
| [性能负载测试](https://github.com/agnaldo4j/kanban-vision-api-kt/wiki/Performance-Load-Testing) | k6 旅程、配置文件、p95 基线(1,644 req/s)以及手动工作流 |
## 许可证
MIT — 请参阅 [LICENSE](LICENSE)。
标签:DevSecOps, Kotlin, RESTful API, 上游代理, 六边形架构, 后台面板检测, 子域名突变, 提示词优化, 测试用例, 用户代理, 看板系统, 自定义请求头, 请求拦截, 软件供应链安全, 远程方法调用