portfolio
← 项目

Zitytraining

Zitytraining 是为一家真实健身房打造的完整管理平台,从零开发,目前已在日常运营中服务真实的客户、教练和支付。

过程中涉及的产品难题:多名客户共享的课程该用什么数据模型、套餐在月中暂停或结束时如何公平计费,以及如何让共享日历在手机上单手也能顺畅使用。

功能

  • 排课 — 支持拖放的日历,每位教练有专属颜色,提供日视图和周视图以及移动端手势(左右滑动切换日期;拖动课程到屏幕边缘即可在拖动过程中跳到下一天)。循环课程在夏令时切换时依然准确,节假日自动显示。
  • 客户与教练管理 — 个人资料、数字化的健康问卷、带体成分图表的进度跟踪,以及每位客户的课程记录(已上课 / 已取消 / 节假日)。
  • 训练工具 — 分类的动作库和训练计划编辑器(组数、次数、重量、超级组、rest-pause),可直接分配给日历中的某节课。
  • 员工考勤 — 教练上下班打卡,管理员可查看整个团队的每周视图。
  • 套餐与支付 — 管理员可配置的套餐目录(私教/双人/三人、频次、价格),并通过 Stripe Checkout 购买订阅或课时包,由 webhook 驱动套餐激活。
  • 账务 — 覆盖所有客户的月度表格:已开票、已收款,按天细分,并能处理月中暂停、变更或结束的套餐。
  • 完全响应式 — 真正用心适配移动端:安全区域、iOS 滚动特性以及接近原生的交互体验。
  • 自动化测试 — 后端使用 Jest 测试,前端使用 Playwright 进行端到端测试。

技术栈

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind CSS 4
  • NestJS
  • MongoDB
  • JWT
  • Stripe
  • DigitalOcean
  • MongoDB Atlas
  • Jest
  • Playwright

使用以下账号体验演示

邮箱
testuser@zitytraining.com
密码
12345