https://github.com/ananthuspace/fitfusion-server
FitFusionApp is a comprehensive fitness web application designed to enhance physical health and wellness journeys. This repository focuses on the backend development of FitFusionApp, which supports three primary portals: User, Trainer, and Admin. Each portal provides tailored functionalities to meet the unique needs of different user types.
https://github.com/ananthuspace/fitfusion-server
express javascript jwt mongodb nodejs typescript
Last synced: 2 months ago
JSON representation
FitFusionApp is a comprehensive fitness web application designed to enhance physical health and wellness journeys. This repository focuses on the backend development of FitFusionApp, which supports three primary portals: User, Trainer, and Admin. Each portal provides tailored functionalities to meet the unique needs of different user types.
- Host: GitHub
- URL: https://github.com/ananthuspace/fitfusion-server
- Owner: AnanthuSpace
- Created: 2024-07-25T07:28:25.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2025-01-17T05:51:29.000Z (over 1 year ago)
- Last Synced: 2025-01-19T19:53:05.392Z (over 1 year ago)
- Topics: express, javascript, jwt, mongodb, nodejs, typescript
- Language: TypeScript
- Homepage:
- Size: 35.6 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# FitFusion Server
Welcome to **FitFusion Server** β the powerhouse behind your fitness journey! Whether you're a fitness enthusiast looking to level up your routine or a certified trainer ready to share your expertise, FitFusion is here to connect you with the best resources for your health goals.
This backend system powers **real-time communication**, **fitness content**, **trainer management**, and much more. Get ready to transform your fitness experience, one API request at a time!
## Features
- **User & Trainer Management**: Create, manage, and authenticate users and trainers. Easily approve or block trainers, and offer personalized workout plans.
- **Real-Time Communication**: Say goodbye to lag! Real-time chat and video calls powered by **WebSockets** and **WebRTC** ensure you're always in touch with your fitness journey.
- **Fitness Content**: Access a wide range of workout plans, diet recommendations, and progress tracking β all designed to help you achieve your fitness goals.
- **File Uploads**: Upload and access files seamlessly with **Multer** and store them securely in **AWS S3**.
- **Payments Made Easy**: Subscriptions and cancellations? All handled securely via **Stripe**.
- **Google Authentication**: Users can log in seamlessly using **Google OAuth**, making registration and login smooth and easy.
- **Admin Tools**: Supercharge your admin panel with user and trainer management, and system-wide settings β making it easier than ever to keep things running smoothly.
- **Secure Authentication**: Stay safe with JWT-based authentication, ensuring only the right users get access to what they need.
- **Scalable & Modular**: Built to scale and evolve β extend and update the system as you see fit.
## Technologies & Tools
- **Backend Framework**: Node.js + Express
- **Database**: MongoDB (with Mongoose for schemas)
- **Authentication**: JSON Web Tokens (JWT) + Google OAuth
- **Real-Time Communication**: WebSockets & WebRTC
- **File Handling**: Multer + AWS S3 for uploads
- **Payment Gateway**: Stripe for secure payments
- **Environment Management**: `.env` configuration for flexibility
## π Project Structure
Hereβs how Iβve laid out the code for maximum clarity and organization:
```
fitfusion-server/
β
βββ src/
β βββ config/ # All your config files, from database to services
β βββ controllers/ # Handles your API requests like a pro
β βββ interfaces/ # TypeScript interfaces to keep things strongly-typed
β βββ models/ # Mongoose schemas to define your data structure
β βββ repositories/ # Where the database magic happens
β βββ routes/ # API routes β your endpoints to the outside world
β βββ services/ # Core services and business logic
β βββ app.ts # The main entry point β the heart of your app
β
βββ .env # Environment variables (keep them secret!)
βββ package.json # Manage dependencies, scripts, and more
βββ README.md # You're here!
```
## Contributing
I love a good contribution! Whether itβs a bug fix, a feature request, or a cool new idea β if you think youβve got something to add, fork this repo and create a pull request. Letβs make FitFusion even better, together!
## Author
Made with Love by **Ananthu Mohan**
Letβs connect! [GitHub](https://github.com/AnanthuSpace)
---
Thank you for checking out **FitFusion Server**. I'm excited to have you on this fitness adventure with me!
If you like what you see, don't forget to give me a star . Itβs like a protein shake for my repo β it helps me grow stronger!