背景:一人公司的项目管理困境
我是一名有 20 年经验的项目经理。在大厂用了多年 Jira,深知流程的价值——需求追踪、优先级管理、发布节奏,这些都是让项目不失控的关键。
但当我开始做自己的 side project 时,发现了一个尴尬的问题:
| 工具 | 问题 |
|---|---|
| Jira | 功能过载,90% 用不到,而且贵 |
| Notion | 无限灵活 = 无限配置成本 |
| Trello | 看板不错,但缺完整工作流 |
作为 PM,我太清楚自己需要什么了:一个轻量级的、开箱即用的任务管理工具,覆盖从灵感到发布的完整流程。
于是我做了一个大胆的决定——自己做一个。
AI 辅助开发:PM 定义"做什么",AI 负责"怎么做"
我不是全栈工程师,写代码对我来说是跨界。但 2026 年的 AI 工具改变了这个等式。
整个开发过程中,AI 深度参与了每个环节:
- 竞品分析:AI 帮我系统对比了十几款工具的功能、定价、优劣
- 产品规格书:我把多年 PM 经验转化成需求文档,AI 输出结构化的 OpenSpec
- 编码:Devin AI 和 Claude 辅助完成核心代码
- Debug + 改进:AI 会主动提出分优先级的改进方案(P0/P1/P2)
关键洞察:AI 不替代领域专长,它放大领域专长。一个深度理解工作流需求的 PM + 负责实现的 AI = 一个能交付产品的团队。
技术选型:Less is More
后端:Node.js + Express + sql.js(SQLite 的 WASM 版本)
前端:纯 HTML / CSS / JavaScript
构建:无(零框架、零打包器、零编译步骤)
为什么不用 React?不用 TypeScript?
因为一人公司最大的敌人不是功能不够,而是复杂度失控。能跑、好维护、改起来快——这就是最好的架构。
三轮迭代
| 版本 | 特点 | 技术变化 |
|---|---|---|
| V1 🌱 | 能用但很糙 | JSON 文件存储 + 两个独立页面 |
| V2 🌿 | 终于像个产品了 | SQLite 数据库 + 单页应用 |
| V3 🌳 | 完整度超出预期 | PWA + i18n 中英双语 + 语音输入 |
核心功能
- 5 阶段看板:Backlog → Todo → Dev → Done → Publish,覆盖完整交付流程
- 3 种视图:看板 / 列表 / 时间线,按需切换
- 灵感池:随时记录想法,支持语音输入,一键转为任务
- 分析面板:状态分布饼图、优先级柱状图、周速率、燃尽图
- 暗色/浅色主题、中英文切换、键盘快捷键
- PWA:可安装到桌面,离线也能用
- 数据完全自托管:SQLite 本地存储,不依赖任何第三方服务
云原生部署:Docker + Helm
做完产品后,我给它加了 Docker 和 Helm Chart。
# 构建镜像
docker build -t solohelm:latest .
# 部署到 Kubernetes
helm install solohelm ./helm/solohelm
# 访问
kubectl port-forward svc/solohelm 3000:3000
Helm Chart 支持 PVC 持久化存储、SecurityContext、Ingress、可选的 HPA。
这里有一个真实踩坑:第一次部署到 K8s 后,Pod 重启数据就全没了。原因是 SQLite 的数据文件在容器内部,容器销毁数据就消失。解决方案是在 values.yaml 中开启 PersistentVolumeClaim:
persistence:
enabled: true
accessModes:
- ReadWriteOnce
size: 1Gi
小项目也值得有专业的部署体验。
数据
- ~3000 行代码
- 11 个 API 端点
- 3 轮迭代
- 1 位项目经理 + AI
- MIT 开源协议
链接
- GitHub: github.com/JaniceWei99…
- 一键安装脚本:支持 Windows / macOS / Linux 双击部署
- Docker Hub 镜像:构建即可使用
如果你也是独立开发者或小团队,欢迎试用。Star、Issue、PR 都非常欢迎。有任何问题可以在评论区聊,我会回复。