Workout.cool:开源健身平台,你的专属健身管家,告别半途而废!

图片[1]-Workout.cool:开源健身平台,你的专属健身管家,告别半途而废!-✨️免费用✅️

厌倦了那些半途而废的健身平台吗?Workout.cool 是一款开源的健身平台,它不仅能帮你制定个性化的健身计划,还能追踪你的训练进度,更拥有一个包含详细指导和视频演示的庞大动作数据库。它是由一位开发者出于对开源健身社区的热爱而创建,旨在弥补之前项目 workout.lol 被放弃的遗憾。

**从社区来,为社区服务**

这个项目并非为了盈利,而是为了给开源健身社区提供一个可靠、现代化且持续维护的平台。如果你曾经是 workout.lol 的用户,欢迎回归!如果你是新来的,欢迎来到健身平台管理的未来!

**快速上手,开启你的健身之旅**

想要快速体验 Workout.cool 吗?只需几个简单的步骤:

1. **准备工作:** 确保你已经安装了 Node.js (v18+) 和 pnpm (v8+),并且安装了 Docker。
2. **克隆代码:** 使用 `git clone https://github.com/Snouzy/workout-cool.git` 命令将项目克隆到本地。
3. **安装依赖:** 进入项目目录,运行 `pnpm install` 命令安装所需的依赖。
4. **配置环境:** 复制 `.env.example` 文件并重命名为 `.env`,根据需要修改其中的环境变量。
5. **启动服务:** 运行 `make dev` 命令,它会自动启动 Docker 中的数据库,运行数据库迁移,填充示例数据,并启动 Next.js 开发服务器。
6. **停止服务:** 如果你想停止服务,可以运行 `make down` 命令。
7. **打开浏览器:** 在浏览器中访问 `http://localhost:3000`,开始你的健身之旅!

**强大的动作数据库,你的私人健身教练**

Workout.cool 拥有一个全面的动作数据库,你可以轻松地导入和使用。

* **导入准备:** 准备一个 CSV 文件,包含动作的 ID、名称(中英文)、描述(中英文)、完整视频 URL、视频图片 URL、介绍(中英文)、别名(中英文)、属性名称和属性值等信息。你可以参考项目提供的示例文件。
* **导入命令:** 运行 `pnpm run import:exercises-full /path/to/your/exercises.csv` 命令导入动作数据。例如,使用示例数据导入:`pnpm run import:exercises-full ./data/sample-exercises.csv`。
* **无限可能:** 如果你想在本地开发中拥有无限的动作数据,可以向 ChatGPT 提问,使用 `./scripts/import-exercises-with-attributes.prompt.md` 文件中的提示语。

**清晰的项目架构,易于理解和扩展**

Workout.cool 采用了 Feature-Sliced Design (FSD) 原则,并结合 Next.js App Router 构建,具有清晰的目录结构和架构原则。

* **目录结构:**
* `src/app/`: Next.js 页面、路由和布局
* `src/processes/`: 业务流程(多功能)
* `src/widgets/`: 可组合的 UI 组件(侧边栏、头部)
* `src/features/`: 业务单元(身份验证、动作管理)
* `src/entities/`: 领域实体(用户、动作、训练计划)
* `src/shared/`: 共享代码(UI、库、配置、类型)
* `src/styles/`: 全局 CSS、主题
* **架构原则:**
* **功能驱动:** 每个功能都是独立的且可重用的。
* **清晰的领域隔离:** `shared` -> `entities` -> `features` -> `widgets` -> `app`
* **一致性:** 业务逻辑、UI 和数据层之间保持一致。

**贡献代码,共同打造更好的健身平台**

Workout.cool 欢迎你的贡献!

* **开发流程:**
1. 创建一个 issue,描述你想要开发的功能或修复的 bug。
2. 声明你将参与开发(或不参与)。
3. Fork 代码仓库。
4. 创建你的 feature|fix|chore|refactor 分支 (`git checkout -b feature/amazing-feature`)。
5. 按照代码规范进行修改。
6. 提交你的修改 (`git commit -m ‘feat: add amazing feature’`)。
7. 推送分支 (`git push origin feature/amazing-feature`)。
8. 发起 Pull Request (一个 issue 对应一个 PR)。
* **代码风格:**
* 遵循 TypeScript 最佳实践。
* 使用 Feature-Sliced Design 架构。
* 编写有意义的提交信息。

**部署和自托管,掌控你的健身数据**

你可以使用 Docker 或手动方式部署 Workout.cool。

* **使用 Docker:**
1. 构建 Docker 镜像:`docker build -t yourusername/workout-cool .`
2. 运行容器:`docker run -p 3000:3000 –env-file .env.production yourusername/workout-cool`
* **使用 Docker Compose:**
1. 更新 `DATABASE_URL`,将 host 指向 postgres 服务而不是 localhost:`DATABASE_URL=postgresql://username:password@postgres:5432/workout_cool`
2. 运行 `docker compose up -d`
* **手动部署:**
1. 构建应用程序:`pnpm build`
2. 运行数据库迁移:`export DATABASE_URL=”your-production-db-url” && npx prisma migrate deploy`
3. 启动生产服务器:`pnpm start`

**开源协议,自由使用和修改**

Workout.cool 使用 MIT 许可证,你可以自由地使用、修改和分发它。

**加入救援任务,一起重建我们的健身家园!**

如果你也对开源健身工具充满热情,欢迎加入 Workout.cool 的救援任务!

* **点亮 Star:** 在 GitHub 上点亮 Star,让更多人知道这个项目。
* **加入 Discord:** 与其他健身爱好者和开发者交流。
* **报告问题:** 发现 bug 或有改进建议,请及时报告。
* **分享需求:** 提出你的功能需求,让开发者知道你的想法。
* **贡献代码:** 如果你是开发者,欢迎贡献代码,一起完善这个平台。
* **赞助项目:** 赞助项目的开发,帮助支付服务器费用、更新动作数据库和持续改进。

Workout.cool,不仅仅是一个健身平台,更是一个开源社区,一个共同打造更好健身未来的平台。

Snouzy/workout-cool: 🏋 Modern open-source fitness coaching platform. Create workout plans, track progress, and access a comprehensive exercise database.
https://github.com/Snouzy/workout-cool

Créez Votre Entraînement Parfait
https://workout.cool/

© 版权声明
THE END
喜欢就支持一下吧
点赞199 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容