gamma-fitness

byJatin Yadav

Build a fully functional, visually stunning Fitness Tracker web app as a single React (.jsx) file using Tailwind CSS. The app should feel like a premium fitness product — dark theme, athletic aesthetic, energetic accent colors (electric green or neon orange), bold typography (use a strong display font like 'Bebas Neue' or 'Oswald' for headings, clean sans-serif for body). === CORE FEATURES === 1. WORKOUT LOG - Add daily exercises with: Exercise Name, Sets, Reps, Weight (kg/lbs), Duration (minutes) - Support exercise categories: Strength, Cardio, Sport, Flexibility - Mark rests between sets - Delete or edit any entry 2. SPORTS & ACTIVITY TRACKER - Log sports played: Football, Basketball, Cricket, Tennis, Swimming, etc. - Log running/cycling with: Distance (km/miles), Duration, Avg Speed, Route notes - Track calories burned (auto-estimate based on activity + duration) 3. DAILY GOALS & STREAKS - Set daily workout goals (e.g., 3 exercises, 30 mins cardio) - Show streak counter (days in a row worked out) - Visual progress ring/bar toward daily goal 4. DASHBOARD / HOME - Today's summary: Total exercises, Total duration, Calories burned - Weekly activity calendar (7-day heatmap or grid showing active days) - Quick-add floating button 5. EXERCISE HISTORY - Log stored in React state (simulated persistence) - Filter by date or category - List view of past workouts with expandable details === SUGGESTED ADDITIONAL FEATURES TO INCLUDE === 6. BODY METRICS TRACKER - Log weight, height, BMI auto-calculation - Track body measurements (chest, waist, arms, etc.) 7. WORKOUT TEMPLATES - Save a workout as a template (e.g., "Leg Day", "Push Day") - One-click load template to quickly fill in the day's workout 8. REST TIMER - Built-in countdown timer for rest between sets (30s / 60s / 90s / custom) - Audio beep or visual alert when rest ends 9. PERSONAL RECORDS (PRs) - Auto-detect when a new max weight/reps is hit for an exercise - Show PR badge next to the entry 10. MOTIVATIONAL ELEMENTS - Random fitness quote on the dashboard - Achievement badges (e.g., "First Workout", "7-Day Streak", "100kg Bench") - Progress celebration animation when goal is met === DESIGN REQUIREMENTS === - Dark mode only, athletic and bold aesthetic - Use bold display fonts (import from Google Fonts) - Neon green (#00FF87) or electric orange (#FF6B35) as accent - Smooth tab/page navigation (no page reloads) - Animated transitions between sections - Mobile-first, responsive layout - All data stored in useState/useReducer (no localStorage or external APIs) - Use lucide-react icons throughout - Floating Action Button (+) to quickly log a workout - Empty state illustrations/messages when no data exists === STRUCTURE === Pages/Tabs: 1. 🏠 Dashboard 2. ➕ Log Workout 3. 📊 History 4. 🎯 Goals 5. 👤 Profile / Body Metrics Make the UI feel like a real fitness app — not a form. Every interaction should feel satisfying and motivating. Include micro-animations on button clicks, smooth number counters, and a polished card-based layout throughout.

LandingLoginSignupProfileLog WorkoutHistoryUsersGoalsAdmin DashboardUser DetailDashboard
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document

System Requirements Document (SRD)

Project Name: gamma-fitness


1. Introduction

The gamma-fitness project is a premium fitness tracker web application designed for individual users to track their fitness journeys. It features a sleek, athletic aesthetic with a dark theme and energetic accent colors, making it visually stunning and motivating. The application is built with scalability in mind, allowing for future integration with Android and iOS platforms.

This document outlines the system requirements for the gamma-fitness web application, ensuring a robust, user-friendly, and visually appealing experience for fitness enthusiasts.


2. System Overview

The gamma-fitness web application is a fitness tracking platform tailored for individual users. It allows users to log workouts, track goals, monitor progress, and stay motivated through achievements and visual elements. Additionally, an admin role is included to oversee user data.

Key features include:

  • A dark-themed, athletic aesthetic with bold typography and neon accent colors.
  • JWT-based email/password authentication for secure access.
  • Role-based access control for users and admin.
  • RESTful API backend for future scalability to mobile platforms.

The system is designed to be mobile-first, responsive, and highly interactive, ensuring a premium user experience.


3. Functional Requirements

Core Features:

  • As a User, I should be able to log daily exercises with details like Exercise Name, Sets, Reps, Weight (kg/lbs), and Duration (minutes).
  • As a User, I should be able to categorize exercises into Strength, Cardio, Sport, or Flexibility.
  • As a User, I should be able to log sports activities like Football, Basketball, Cricket, Tennis, and Swimming.
  • As a User, I should be able to track running or cycling with Distance (km/miles), Duration, Avg Speed, and Route notes.
  • As a User, I should be able to set daily workout goals and view a streak counter for consecutive active days.
  • As a User, I should be able to view a dashboard summary of my daily and weekly activities.
  • As a User, I should be able to filter and view my exercise history by date or category.
  • As a User, I should be able to log body metrics like weight, height, and body measurements.
  • As a User, I should be able to save workout templates for quick reuse.
  • As a User, I should be able to use a built-in rest timer with audio/visual alerts.
  • As a User, I should be able to view motivational quotes and achievement badges.

Admin Features:

  • As an Admin, I should be able to view all user data.

4. User Personas

  1. Individual User

    • Primary user of the application.
    • Logs workouts, tracks progress, and sets fitness goals.
    • Motivated by achievements, streaks, and visual progress indicators.
  2. Admin

    • Oversees user data for monitoring purposes.
    • Has access to view all user logs and metrics but cannot edit or delete user data.

5. Visuals Colors and Theme

  • Primary Theme: Dark mode only.
  • Accent Colors:
    • Neon Green (#00FF87)
    • Electric Orange (#FF6B35)
  • Typography:
    • Headings: Bold display fonts like 'Bebas Neue' or 'Oswald'.
    • Body: Clean sans-serif fonts like 'Roboto' or 'Open Sans'.
  • Icons: Use lucide-react icons for consistency.
  • Layout: Card-based design with smooth transitions and micro-animations.

6. Signature Design Concept

"Interactive Energy Pulse Dashboard"

The homepage/dashboard will feature a dynamic energy pulse animation that reacts to user activity.

  • Visuals:
    A glowing circular progress ring in the center of the screen, pulsing with neon green or electric orange light. The ring dynamically fills based on the user’s daily goal progress.

  • Interactions:

    • Hovering over the ring reveals stats like total exercises, calories burned, and duration.
    • Clicking the ring expands it into a full-screen radial menu with quick links to log workouts, view history, or set goals.
  • Micro-Animations:

    • Smooth transitions as the ring fills or resets daily.
    • Subtle glow effects on hover and click.
    • Confetti animation when a daily goal is achieved.
  • Background:
    A dark, gradient background with faint, animated gridlines resembling a futuristic gym floor.

This concept ensures the homepage is not only functional but also visually captivating and motivating.


7. Non-Functional Requirements

  • Performance:

    • The app should load within 2 seconds on a standard 4G connection.
    • Smooth animations and transitions without lag.
  • Scalability:

    • Backend designed to support future mobile app integration.
    • RESTful API for platform-agnostic access.
  • Security:

    • JWT-based authentication for secure user sessions.
    • Role-based access control to differentiate user and admin permissions.
  • Usability:

    • Mobile-first, responsive design.
    • Intuitive navigation and satisfying interactions.

8. Tech Stack

  • Frontend:

    • React (JSX)
    • Tailwind CSS
  • Backend:

    • Python
    • FastAPI
  • Database:

    • MySQL (with Alembic for migrations)
  • Authentication:

    • JWT for secure email/password login
  • Icons:

    • lucide-react
  • Containerization:

    • Docker
    • docker-compose
  • Future Mobile Integration:

    • RESTful API for Android/iOS apps

9. Assumptions and Constraints

  • The app will initially be a web application but must be scalable to support mobile platforms.
  • All data will be stored in React state for now (simulated persistence).
  • No external APIs or localStorage will be used in the initial version.
  • Admin access is limited to viewing user data without editing capabilities.

10. Glossary

  • JWT: JSON Web Token, a secure method for user authentication.
  • RESTful API: An API design approach that uses HTTP requests for communication.
  • React State: A method in React to manage data within components.
  • Alembic: A database migration tool for Python.
  • lucide-react: A library of icons for React applications.

This SRD provides a comprehensive roadmap for the development of gamma-fitness, ensuring a premium, scalable, and user-centric fitness tracking experience.

Landing: View Info
Login: Sign In
Admin Dashboard: View Overview
Users: Browse All Users
Users: View User Profile
User Detail: View Workout Logs
User Detail: View Body Metrics