BurnOut is your ultimate fitness companion, designed to make tracking your daily calorie intake and workouts a breeze. Whether you're aiming to shed some pounds or bulk up, BurnOut has got you covered. Here's what you can expect:
-
Personalized Profiles: Create your unique profile by entering your height, weight, fitness goals, and target weight. BurnOut tailors your fitness journey just for you.
-
Calorie Tracking: Calorie mindfulness is the best way to achieve your goals. BurnOut provides a comprehensive calorie logbook as the best tool for a healthier lifestyle.
-
Goal Setting: Set your health and wellness goals with ease. Whether it's weight loss or muscle gain, BurnOut provides the roadmap to get you there.
-
Connect with Friends: Stay accountable by connecting with friends, sending friend requests, and sharing your fitness progress. Together, you can achieve your goals.
and more:
- User can keep a track of their calorie intake and output.
- User just needs to input the food they've eaten or an activity they've done,and calories get calculated automatically.
- Displays a record of calories in and calories burnt out day wise in History tab.
- Helps user to figure out how much to eat/exercise according to their desired goal(weight loss/gain).
- Users can connect with their friends and keep track of each other's progress
- Enrollment into a variety of workout programs.
- Accessible to everyone and easy to use.
- Demo
- Tech Stack
- Setup
- Testing
- Core Functionalities:
- Future Scope
- Team Members
- How to Contribute
- License
Demo video showcasing the most recent updates and features of Burnout
Prerequisites:
- Python 3.10
Step 1: Install the MongoDB Community Edition:
The Community Edition lets you run MongoDB locally on your computer. If you want to work with MongoDB on the cloud, use MongoDB's Atlas managed database service.
Optionally, install MongoDB Compass as a GUI for MongoDB databases, using connection string mongodb://localhost:27017 for local development.
Then, make sure that MongoDB is running:
brew services start mongodb on macOS and mongod on Windows
Step 2:
Clone the repository: git clone https://github.com/1360119047/calorieApp_server.git
Step 3:
Note
It is best practice to use a virtual environment. We have been using venv, which comes bundled with Python.
To activate the venv virtual environment, navigate to the root of the project directory and run: source ./venv/Scripts/activate on macOS. To deactivate, run deactivate.
Alternatively, use pipenv virtual environment: pipenv shell
Install the required packages by running the following command in the terminal: pip install -r requirements.txt.
There is a separate requirements-dev.txt for installing dev dependencies: pip install -r requirements-dev.txt.
Step 4:
Run the following command in the terminal: python src/application.py
Step 5:
Open the URL in your browser: http://127.0.0.1:5000/
Step 6:
Run python src/insert_data.py to create a food collection and exercise collection in the test database. This food data is used for the Calories form.
Prerequisites:
Step 1:
Clone the repository: git clone https://github.com/1360119047/calorieApp_server.git
Step 2:
Run with Docker: docker compose up --build
Step 3:
Open the URL in your browser: http://127.0.0.1:5000/
We primarily test the application.py module, the Flask API interface for which the client side interacts. If HTTP requests to application.py endpoints
return expected values, then we can reasonably assume that other backend code that is customer-facing is working. That is what we most care about.
Unit tests are located in tests/test_application.py. To run tests and generate a code coverage report:
pytest --cov=application --cov-report=html
Note that coverage HTML is written to directory htmlcov in the same location the command is run. Navigate to htmlcov and open index.html in a browser.
- Data sources:
- Remake frontend with a standard javascript framework for a sleeker, more modern look.
- Improve user profile with more information and customizable options. Make profiles viewable to friends and other users.
- Provide user stats and trends for diet and activity.
- Improve the food and activity selection forms with a more efficient search tool for a better experience.
- Make goals more customizable. Add profile badges and other rewards for hitting goals.
- Add functionality to workout enrollment feature. Incorporate workout planner and other progress metrics.
- Implement a recommendation system for foods, activities, calorie goals, etc.
Logan Williams |
MichaelDacanay |
Xiaochun Liang |
Please refer to docs/CONTRIBUTING.md for instructions on how to contribute to BurnOut.
This project is licensed under the MIT License.








