A comprehensive gym management platform built with the MERN stack, featuring membership subscriptions, BMI calculator, and complete gym services management with integrated Razorpay payment gateway.
FIT-FUSSION is a modern, full-featured gym website that provides a complete digital solution for fitness enthusiasts and gym management. The platform offers membership subscriptions, fitness tools, and comprehensive information about gym services, all powered by secure payment processing and responsive design.
- Home Page - Dynamic landing page with gym overview and highlights
- About Us - Detailed information about the gym, mission, and values
- Blog - Fitness tips, workout guides, and health articles
- Gallery - Showcase of gym facilities, equipment, and member activities
- Membership - Subscription plans and pricing information
- Razorpay Integration - Secure payment processing for memberships
- Multiple Membership Plans - Flexible subscription options
- Payment History - Track subscription payments and renewals
- Secure Transactions - End-to-end encrypted payment processing
- BMI Calculator - Body Mass Index calculation tool
- Health Metrics - Track and monitor fitness progress
- Workout Planners - Personalized fitness routines
- Responsive Design - Optimized for all devices
- User Authentication - Secure login and registration
- Member Dashboard - Personal account management
- Contact System - Easy communication with gym staff
- Modern UI/UX - Clean and intuitive interface
- React.js - Component-based UI library
- HTML5 & CSS3 - Structure and styling
- JavaScript (ES6+) - Programming language
- Responsive Design - Mobile-first approach
- React Router - Client-side routing
- Node.js - Server-side runtime environment
- Express.js - Web application framework
- RESTful APIs - Clean API architecture
- JWT Authentication - Secure user authentication
- MongoDB - NoSQL database for data storage
- Mongoose - MongoDB object modeling
- Database Schemas - Users, memberships, payments, blog posts
- Razorpay API - Secure payment processing
- Subscription Management - Recurring payment handling
- Webhook Integration - Real-time payment status updates
- Vercel - Frontend deployment
- MongoDB Atlas - Cloud database hosting
- Environment Management - Secure configuration
Make sure you have the following installed:
- Node.js (v14 or higher)
- npm or yarn
- MongoDB (local or Atlas)
- Razorpay account for payment integration
-
Clone the repository
git clone https://github.com/MohdOves/FIT-FUSSION.git cd FIT-FUSSION -
Install backend dependencies
cd backend npm install -
Install frontend dependencies
cd ../frontend npm install -
Environment Configuration
Create a
.envfile in the backend directory:# Database Configuration MONGODB_URI=your_mongodb_connection_string # JWT Configuration JWT_SECRET=your_jwt_secret_key JWT_EXPIRE=30d # Razorpay Configuration RAZORPAY_KEY_ID=your_razorpay_key_id RAZORPAY_KEY_SECRET=your_razorpay_key_secret RAZORPAY_WEBHOOK_SECRET=your_webhook_secret # Server Configuration PORT=5000 NODE_ENV=development # Frontend URL (for CORS) FRONTEND_URL=http://localhost:3000 # Email Configuration (for notifications) EMAIL_SERVICE=gmail EMAIL_USER=your_email@gmail.com EMAIL_PASS=your_app_password
Create a
.envfile in the frontend directory:REACT_APP_API_URL=http://localhost:5000/api REACT_APP_RAZORPAY_KEY_ID=your_razorpay_key_id REACT_APP_SITE_URL=http://localhost:3000
-
Start the development servers
Backend server:
cd backend npm run devFrontend server (in a new terminal):
cd frontend npm start -
Access the application
- Frontend:
http://localhost:3000 - Backend API:
http://localhost:5000
- Frontend:
FIT-FUSSION/
โโโ frontend/
โ โโโ public/
โ โ โโโ index.html
โ โ โโโ favicon.ico
โ โโโ src/
โ โ โโโ components/
โ โ โ โโโ Header/
โ โ โ โโโ Footer/
โ โ โ โโโ BMICalculator/
โ โ โ โโโ PaymentGateway/
โ โ โโโ pages/
โ โ โ โโโ Home/
โ โ โ โโโ About/
โ โ โ โโโ Blog/
โ โ โ โโโ Gallery/
โ โ โ โโโ Membership/
โ โ โ โโโ Dashboard/
โ โ โโโ services/
โ โ โโโ utils/
โ โ โโโ styles/
โ โ โโโ App.js
โ โโโ package.json
โโโ backend/
โ โโโ controllers/
โ โ โโโ authController.js
โ โ โโโ membershipController.js
โ โ โโโ paymentController.js
โ โ โโโ blogController.js
โ โโโ models/
โ โ โโโ User.js
โ โ โโโ Membership.js
โ โ โโโ Payment.js
โ โ โโโ Blog.js
โ โโโ routes/
โ โ โโโ auth.js
โ โ โโโ membership.js
โ โ โโโ payment.js
โ โ โโโ blog.js
โ โโโ middleware/
โ โ โโโ auth.js
โ โ โโโ errorHandler.js
โ โโโ config/
โ โ โโโ database.js
โ โโโ server.js
โโโ README.md
POST /api/auth/register- User registrationPOST /api/auth/login- User loginGET /api/auth/profile- Get user profilePUT /api/auth/profile- Update user profile
GET /api/memberships- Get all membership plansPOST /api/memberships/subscribe- Subscribe to membershipGET /api/memberships/user- Get user membershipsPUT /api/memberships/:id- Update membership
POST /api/payments/create-order- Create Razorpay orderPOST /api/payments/verify- Verify paymentGET /api/payments/history- Payment historyPOST /api/payments/webhook- Razorpay webhook
GET /api/blogs- Get all blog postsGET /api/blogs/:id- Get single blog postPOST /api/blogs- Create blog post (admin)PUT /api/blogs/:id- Update blog post (admin)
POST /api/utils/bmi- Calculate BMIPOST /api/contact- Contact form submission
- Membership Subscriptions - Monthly/yearly plans
- One-time Payments - Personal training, merchandise
- Secure Checkout - PCI DSS compliant
- Multiple Payment Methods - Cards, UPI, Net Banking, Wallets
- Recurring Payments - Automatic renewal
- Plan Upgrades/Downgrades - Flexible membership changes
- Payment Tracking - Complete transaction history
- Refund Processing - Automated refund handling
- Interactive Calculator - Real-time BMI calculation
- Health Categories - Underweight, Normal, Overweight, Obese
- Personalized Recommendations - Fitness advice based on BMI
- Progress Tracking - Save and monitor BMI history
- Visual Indicators - Colorful progress charts
Fully optimized for all devices:
- ๐ฑ Mobile First - Optimized for smartphones
- ๐ฅ๏ธ Desktop - Full-featured desktop experience
- ๐ฑ Tablet - Touch-friendly tablet interface
- โ Smartwatch - Basic compatibility
- Connect GitHub repository to Vercel
- Configure environment variables
- Automatic deployment on push to main
- Railway - Easy Node.js deployment
- Heroku - Platform-as-a-Service
- DigitalOcean - VPS hosting
- AWS - Cloud infrastructure
- MongoDB Atlas - Cloud database service
- Automated backups - Data protection
- Global clusters - Improved performance
- JWT Authentication - Secure user sessions
- Password Hashing - bcrypt encryption
- CORS Protection - Cross-origin security
- Input Validation - Prevent injection attacks
- Rate Limiting - API abuse protection
- HTTPS Enforcement - Secure data transmission
- Basic Plan - Access to gym equipment
- Premium Plan - Equipment + group classes
- VIP Plan - All features + personal training
- Corporate Plan - Group memberships for companies
- Equipment access
- Group fitness classes
- Personal training sessions
- Nutrition consultations
- Special events access
- Member Management - View and manage all members
- Payment Analytics - Revenue and subscription metrics
- Content Management - Blog posts and gallery updates
- Membership Analytics - Plan popularity and retention
- Financial Reports - Detailed payment reports
We welcome contributions to FIT-FUSSION! Please follow these guidelines:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow React best practices
- Write clean, commented code
- Test new features thoroughly
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
Mohd Oves
- ๐ Computer Science Engineering Student
- ๐ป Full Stack Developer
- ๐๏ธ Fitness Enthusiast
- ๐ง Email: [your-email@domain.com]
- ๐ GitHub: @MohdOves
- ๐ผ LinkedIn: Connect with me
- Razorpay for secure payment processing
- Vercel for hosting services
- MongoDB Atlas for database hosting
- Fitness community for inspiration and feedback
- Open source contributors and maintainers
โญ Transform your fitness journey with FIT-FUSSION! โญ
"Your fitness journey starts here. Join the FIT-FUSSION community today!"