- About
- Project Origin & Motivation
- Quick Start
- Exercise Database Import
- Project Architecture
- Roadmap
- Contributing
- Deployment
- Resources
- License
- Sponsor This Project
A comprehensive fitness coaching platform that allows create workout plans for you, track progress, and access a vast exercise database with detailed instructions and video demonstrations.
This project was born from a personal mission to revive and improve upon a previous fitness platform. As the primary contributor to the original workout.lol project, I witnessed its journey and abandonment. 🥹
- 🏗️ Original Contributor: I was the main contributor to workout.lol
- 💼 Business Challenges: The original project faced major hurdles with exercise video partnerships (no reliable video provider) could be established
- 💰 Project Sale: Due to these partnership issues, the project was sold to another party
- 📉 Abandonment: The new owner quickly realized that exercise video licensing costs were prohibitively expensive, began to be sick and abandoned the entire project
- 🔄 Revival Attempts: For the past 9 months, I've been trying to reconnect with the new stakeholder
- 📧 Radio Silence: Despite multiple (15) attempts, there has been no response
- 🚀 New Beginning: Rather than let this valuable work disappear, I decided to create a fresh, modern implementation
Someone had to step up.
The opensource fitness community deserves better than broken promises and abandoned platforms.
I'm not building this for profit.
This isn't just a revival : it's an evolution. workout.cool represents everything the original project could have been, with the reliability, modern approach, and maintenance that the fitness open source community deserves.
I'm not just a developer : I'm a user who refused to let our community down.
I experienced firsthand the frustration of watching a beloved tool slowly disappear. Like many of you, I had workouts saved, progress tracked, and a routine built around the platform.
If you were part of the original workout.lol community, welcome back! If you're new here, welcome to the future of fitness platform management.
- Node.js 18+
- Either:
- Docker
- OR PostgreSQL external database
- pnpm (recommended) or npm
-
Clone the repository
git clone https://github.com/Snouzy/workout-cool.git cd workout-cool -
Install dependencies
-
Set up environment variables
Fill in your database URL and other required environment variables:
DATABASE_URL="postgresql://username:password@localhost:5432/workout_cool" BETTER_AUTH_SECRET="your-secret-key" # ... other variables -
Set up the database
The project provides a convenient make command that handles everything:
This single command will:
- Start the PostgreSQL database using Docker
- Run database migrations
- Start the development server
If you prefer to use your own PostgreSQL installation:
# Run migrations npx prisma migrate deploy npx prisma generate # Start the development server pnpm dev -
Open your browser Navigate to http://localhost:3000
The project includes a comprehensive exercise database. To import a sample of exercises:
- Prepare your CSV file
Your CSV should have these columns:
You can use the provided example.
- TYPE: STRENGTH, CARDIO, PLYOMETRICS, STRETCHING, etc.
- PRIMARY_MUSCLE: QUADRICEPS, CHEST, BACK, SHOULDERS, etc.
- SECONDARY_MUSCLE: Secondary muscle groups targeted
- EQUIPMENT: BARBELL, DUMBBELL, BODYWEIGHT, MACHINE, etc.
- MECHANICS_TYPE: COMPOUND, ISOLATION
This project follows Feature-Sliced Design (FSD) principles with Next.js App Router:
- Feature-driven: Each feature is independent and reusable
- Clear domain isolation: shared → entities → features → widgets → app
- Consistency: Between business logic, UI, and data layers
Here are the next steps and goals for Workout.cool:
- 🏋️♂️ Add new exercises and videos
- 📱 Mobile app (React Native)
- 🏆 Badges and gamification system
- 📊 Advanced progress statistics
- 🤝 Integration with wearables (watches, trackers)
- 🌍 Multilingual support
- 🔒 OAuth authentication (Google, Apple, etc.)
- 💬 Built-in community forum
Feel free to suggest your ideas via issues!
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch (git checkout -b feature/amazing-feature)
- Make your changes
- Commit your changes (git commit -m 'feat: add amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
- Follow TypeScript best practices
- Use Feature-Sliced Design architecture
- Write meaningful commit messages
- Add tests for new features
This project is licensed under the MIT License. See the LICENSE file for details.
This is about rebuilding what we lost, together.
- 🌟 Star this repo to show the world our community is alive and thriving
- 🐛 Report issues you find. I'm listening to every single one
- 💡 Share your feature requests finally, someone who will actually implement them !
- 🔄 Spread the word to fellow fitness enthusiasts who lost hope
- 🤝 Contribute code if you're a developer : let's build this together
Appear in the README and on the website as supporter by donating:
If you believe in open-source fitness tools and want to help this project thrive,
consider buying me a coffee ☕ or sponsoring the continued development.
Your support helps cover hosting costs, exercise database updates, and continuous improvement.
Thank you for keeping workout.cool alive and evolving 💪