Athletica is a social fitness web application designed to help users create, manage, discover, and share workout routines. The platform allows users to build personalised training plans, explore community-created routines, follow other users, and stay motivated through social fitness features.
- User authentication (Register / Login)
- JWT protected routes
- Create, edit, and delete workout routines
- Public and private profile settings
- Routine discovery and search
- Follow system with private account requests
- Notifications system
- Routine optimisation and recommendations
- Admin moderation tools
- React + Vite
- TypeScript
- Tailwind CSS
- React Router
- Lucide Icons
- Node.js
- Express.js
- MongoDB
- JWT Authentication
git clone https://github.com/Tayte555/Athletica.git
cd athleticaInstall all required dependencies for the root project, server, and client:
npm run install:allAlternatively, you can install them separately:
npm install
npm run server:i
npm run client:iThis project requires environment variables to run correctly for development.
Please create a .env file in the server root using the .env.example template.
These include values such as:
- MongoDB connection string
- JWT secret
- Server port configuration
- Any third-party service keys (if required)
Do not commit .env files to version control.
To run both frontend and backend together:
npm run devThis uses concurrently to start both services at the same time.
npm run devnpm run servernpm run clientnpm run server:inpm run client:inpm run install:allathletica/
│
├── client/ # React frontend
│
├── server/ # Express backend
│
├── package.json # Root project scripts
│
└── README.md
This project is currently configured for local development use.
Make sure MongoDB is running and your environment variables are correctly configured before starting the application.
If you experience setup issues, please contact me directly.
Developed by Tayte Keates
For setup support, environment variables, or project questions, please get in touch.
Instagram: @taytekeates LinkedIn: /in/taytekeates