ZenList
ZenList是一个超小的待办事项列表应用程序,它由以下部分构建:
- React前端
- Go+GraphQL后端
- PostgreSQL
前端包括一个最低限度的API测试人员UI,用于练习:
- 用户资料(
me,upsertMe) - 项目(创建、更新、删除、列出)
- 标签(创建、更新、删除、列表)
- 任务和子任务(创建、更新、删除、列表)
- 状态/优先级过滤和标签分配
使用Docker运行(推荐)
先决条件
- Docker桌面(或Docker引擎)正在运行
开始一切
从项目根:
docker compose up --build服务:
- 前端:
http://localhost:5173 - 后端GraphQL端点:
http://localhost:8080/query - 后端游乐场:
http://localhost:8080/ - 后端健康:
http://localhost:8080/healthz - PostgreSQL:
localhost:5432(zenlist/zenlist)
停止服务
docker compose down要同时删除数据库数据卷,请执行以下操作:
docker compose down -v在本地运行(没有完整的Docker堆栈)
此模式在Docker中运行PostgreSQL,后端/前端直接在您的机器上运行。
1) 仅启动PostgreSQL
docker compose up -d postgres2) 运行后端
cd backend/go-graphql
cp .env.example .env
make migrate-up
make run3) 运行前端
在新终端中:
cd apps/web-react
npm install
npm run dev然后打开 http://localhost:5173.
有用的命令
后端测试
cd backend/go-graphql
make test后端编码器
cd backend/go-graphql
make gen