Skip to content

venkatnikhilm/FitCoach

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FitCoach - Smart Workout application

FitCoach AI is an intelligent fitness platform that leverages artificial intelligence to deliver personalized workout routines, nutrition plans, and comprehensive progress tracking. Built on a modern microservices architecture, the platform provides secure, scalable, and adaptive fitness guidance tailored to each user's unique goals.

Features

  • Personalized Workout Plans – Custom routines based on individual fitness goals and experience levels
  • AI-Powered Nutrition Guidance – Smart meal recommendations generated by OpenAI
  • Progress Analytics – Comprehensive tracking and visualization of fitness journey
  • Secure Authentication – Enterprise-grade security with role-based access control
  • Adaptive AI Suggestions – Continuously improving recommendations based on user activity

Tech Stack

Backend

  • Spring Boot – Robust microservice development and RESTful APIs
  • Spring Cloud – Service discovery (Eureka) and centralized configuration
  • API Gateway – Unified entry point with intelligent routing
  • Keycloak – OAuth2 and JWT-based authentication and authorization
  • OpenAI API – AI-driven fitness and nutrition recommendations
  • Docker – Containerized microservices for consistent deployment
  • AWS EC2 – Cloud hosting and scalable infrastructure

Frontend

  • React.js – Modern, responsive user interface with seamless interactions
  • Vite – Fast build tooling and development experience

Microservices Architecture

  • User Service – User registration, authentication, and profile management
  • Activity Service – Complete workout plan management and tracking
  • AI Service – Integration with OpenAI for intelligent recommendations
  • Config Server – Centralized configuration management for all services
  • Eureka Server – Service discovery and health monitoring
  • API Gateway – Request routing, load balancing, and security filtering

Security

FitCoach AI implements enterprise-grade security using Keycloak, featuring:

  • OAuth2 authentication flow
  • JWT token validation
  • Role-based access control (RBAC)
  • Secure API endpoints with fine-grained permissions

AI Integration

The platform harnesses OpenAI's GPT models to generate personalized fitness and nutrition recommendations. The AI analyzes user goals, preferences, activity history, and progress data to provide intelligent, context-aware suggestions that evolve with the user's fitness journey.

Getting Started

Prerequisites

  • Java 17+
  • Node.js 18+
  • Docker and Docker Compose
  • Keycloak instance

Setup Instructions

  1. Clone the repository

    git clone <repository-url>
    cd FitForge-AI
  2. Configure environment variables

    • Set up OpenAI API
    • Configure Keycloak connection details
    • Update database credentials
  3. Start backend services

    # Start Config Server first
    cd configserver && ./mvnw spring-boot:run
    
    # Start Eureka Server
    cd eureka && ./mvnw spring-boot:run
    
    # Start remaining microservices
    cd userservice && ./mvnw spring-boot:run
    cd activityservice && ./mvnw spring-boot:run
    cd aiservice && ./mvnw spring-boot:run
    cd gateway && ./mvnw spring-boot:run
  4. Launch frontend

    cd fitness-app-frontend
    npm install
    npm run dev
  5. Access the application

    • Frontend: http://localhost:5173
    • API Gateway: http://localhost:8080
    • Eureka Dashboard: http://localhost:8761

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors