SparkyFitness is a comprehensive fitness tracking and management application designed to help users monitor their nutrition, exercise, and body measurements. It provides tools for daily progress tracking, goal setting, and insightful reports to support a healthy lifestyle.
- Log your daily meals
- Create and manage custom foods and categories
- View summaries and analyze trends with interactive charts
- Record your workouts
- Browse and search a comprehensive exercise database
- Track fitness progress over time
- Track daily hydration goals
- Simple, quick water logging
- Record body metrics (e.g. weight, waist, arms)
- Add custom measurement types
- Visualize progress through charts
- Set and manage fitness and nutrition goals
- Track progress over time
- Monitor daily activity
- Stay consistent with habit tracking
- Log food, exercise, body stats, and steps via chat
- Upload food images to log meals automatically
- Includes chat history and personalized guidance
- Secure login system
- Switch between user profiles
- Support for family access and management
- Generate summaries for nutrition and body metrics
- Track long-term trends over weeks or months
- Switch between light and dark mode
- Designed with a minimal, distraction-free interface
- Join discord https://discord.gg/vcnMT5cPEA
- Post in discussion
To get the SparkyFitness application running on your local machine, follow these steps:
-
Configure Environment Variables:
Create a
.envfile in the root directory. Copy the template from the example.envfile and update it with your settings. Refer to the WIKI for the existing configuration that I used. Try not to change the port as they may not work properly with initial releases until the project is stable.- Admin Panel URL: To enable the Admin panel and configure OIDC settings, ensure the
SPARKY_FITNESS_ADMIN_EMAILenvironment variable is set to the appropriate URL for your Admin panel.
- Admin Panel URL: To enable the Admin panel and configure OIDC settings, ensure the
-
Run with Docker Compose: Pull the Docker images and start the services. If you've made changes to the
.envfile, you should rebuild the images to ensure the new environment variables are picked up.docker-compose pull # Pull the latest Docker images docker-compose up -d # Start the services in detached mode
Refer sample setup as reference https://github.com/CodeWithCJ/SparkyFitness/wiki/Sample-Setup
-
Access the Application: Once the services are up and running, access SparkyFitness in your web browser at the URL configured for your frontend (e.g.,
http://localhost:3004orhttp://your_frontend_ip_or_domain:3004). -
AI Chatbot - Optional Configuration: To enable the AI Chatbot's full functionality, you will need to configure the necessary API keys within the application's settings after logging in.
-
Initial Application Setup: After logging into the application, navigate to the settings menu to:
- Add your preferred food providers (e.g., OpenFoodFacts is a free option).
- Adjust your preferences and profile settings.
The following features are currently in beta and may not have been thoroughly tested. Expect potential bugs or incomplete functionality:
- AI Chatbot
- Multi-user support
- Family & Friends access
- Apple Health Data integration
This application is under heavy development. Things may not work as expected due to the Supabase to PostgreSQL migration. BREAKING CHANGES might be introduced until the application is stable. You might need to change Docker/environment variables for new releases. Therefore, auto-upgrades using Watchtower or similar apps are not recommended. Read release notes for any BREAKING CHANGES.
