Skip to content

ArmaanjeetSandhu/knapsnack

Repository files navigation

Knap[Snack] : The Meal Planner

Header Image

Knap[Snack] is a Python-based tool that uses mixed-integer linear programming to help you create personalized, cost-effective meal plans while meeting specific nutritional requirements. It takes into account both macronutrients (proteins, carbohydrates, fats) and micronutrients (vitamins, minerals) to ensure a balanced diet tailored to your age, gender, and health goals.

🛠️ System Architecture

graph TD
    985["User<br>External Actor"]
    subgraph 981["External Systems"]
        995["USDA FoodData Central API<br>External Service"]
    end
    subgraph 982["Knap[Snack] System"]
        subgraph 983["Backend API"]
            990["API Server<br>Flask/Python"]
            991["Calculation Service<br>Python"]
            992["Optimization Service<br>Python/PuLP"]
            993["Food Data Service<br>Python/Requests"]
            994["Nutrient Database<br>CSV/Pandas"]
            %% Edges at this level (grouped by source)
            990["API Server<br>Flask/Python"] -->|Handles /optimize requests using| 992["Optimization Service<br>Python/PuLP"]
            990["API Server<br>Flask/Python"] -->|Handles /search requests using| 993["Food Data Service<br>Python/Requests"]
            991["Calculation Service<br>Python"] -->|Reads data from| 994["Nutrient Database<br>CSV/Pandas"]
            992["Optimization Service<br>Python/PuLP"] -->|Reads data from| 994["Nutrient Database<br>CSV/Pandas"]
        end
        subgraph 984["Frontend Application"]
            986["Client Application<br>React/Vite"]
            987["API Service Client<br>JavaScript"]
            988["Client Configuration<br>JavaScript/JSON"]
            989["UI Components<br>React/Tailwind"]
            %% Edges at this level (grouped by source)
            986["Client Application<br>React/Vite"] -->|Makes API calls via| 987["API Service Client<br>JavaScript"]
        end
    end
    %% Edges at this level (grouped by source)
    985["User<br>External Actor"] -->|Uses| 986["Client Application<br>React/Vite"]
    993["Food Data Service<br>Python/Requests"] -->|Fetches food data from| 995["USDA FoodData Central API<br>External Service"]
Loading

Visualize the repo structure here.

About

The Cost-Optimized Meal Planner

Topics

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •