Skip to content

sam-don/mealplanner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Meal Planner

Create a weekly meal plan to fit your macronutrient goals

Meal planner is used to add recipes including macronutrient data into a weekly meal plan to simplify calorie/macro tracking. Users are able to log in to see their current plan and make changes.

Click here to see the Trello board for this project!

Wireframes

Home Page (Not logged in)

Home Page (Not logged in)

Home Page (Logged in)

Home Page (Logged in)

Edit Meal Plan

Edit Meal Plan

Add New Meal

Add New Meal

Set up

Requirements

  • Python3.8
  • Mypy
  • Flake8
  • Psycopg2
  • Flask
  • SQLAlchemy
  • Marshmallow

Installation

  • Clone the GitHub repository into a folder in your development environment and enter the project directory.

  • Create a new virtual environment using the following command, note that mealplanner requires Python 3.8

    python3.8 -m venv venv

    If you do not have the venv module installed, run pip install venv - this command can change depending on what versions of pip you have installed on your system.

  • Activate your virtual environment using the following command:

    source venv/bin/activate

  • Install the dependencies using the following command:

    pip install -r requirements.txt

  • Now you're good to go! Open the app by running python src/main.py.

CI Pipeline Overview

A Github Actions workflow is currently set up to run mypy, flake8 and the tests automatically when commits are pushed to Github.

The workflow will run two jobs concurrently. Both will set up an Ubuntu environment, install Python3.8, clone the repository and create a virtual environment. From there, one job runs flake8 and mypy tests, with the other running the unittest tests. If all of the tests pass the workflow completes successfully.

Database Schema

Database Schema

This is the current planned database schema for this project. It is normalised and is based around users having the ability to add meals to their meal plan.

This currently needs to be expanded to have different meals for each day of the week.

About

Create and manage a weekly meal plan

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published