Giter Site home page Giter Site logo

gamp's Introduction

GAMP

Groceries and Meal Planning

Installation

Add alias gamp=/path/to/gamp/bin/gamp

Usage Tips

  • Use --help after any command for options; e.g. gamp --help or gamp recipe-edit --help.
  • $GAMP_CONFIG_DIR defaults to ~/.config/gamp
  • All subcommands can be called using unique prefixes; e.g. gamp reci is the same as gamp recipe-edit

Suggested Usage

Recipe Storage

  1. Define ingredients in $GAMP_CONFIG_DIR/ingredients.yaml.
  2. Collect recipes with gamp recipe-edit [recipe_name]
    • This opens vim with a tag file set to ingredients for easy completion.

Meal Planning

  1. Define a meal plan with gamp meal-plan-edit [meal_plan_path]
    • The keys in this file are not used by gamp, but may be later.
    • Create as many or as few rows as you like.
    • This opens vim with a tag file set to recipe names for easy completion.
  2. Create inventory worksheet with gamp inventory [meal_plan_path] [worksheet_path].
  3. Fill in the inventory worksheet
    1. Fill in the have column with the amount in your inventory
    2. Or you can also delete rows if you don't need that item.
  4. Create a grocery list with gamp grocery-list [worksheet_path] [list_path]
  5. Buy groceries

Cooking

  1. Open the recipe you want to cook with gamp recipe-edit [recipe_name]
  2. Use recipe for reference while cooking, and make any edits you wish to remember for next time you cook this.

Future Features

  • default unit for ingredient
  • create as pip installable package
  • validate meal plans like recipes
  • remove need to define file paths while Meal Planning
    • add interactive inventory worksheet instead of csv
  • suggest corrections upon invalidate recipe or meal plan
  • view meal plan
    • what you are supposed to cook today, make mealplan key relative date?
  • Don't require ingredients to be defined in ingredients.yaml
  • Preferred units for each ingredient in grocery list
  • log cooked recipes
    • recipe suggestions based on ranking and last cooked time
  • inventory tacking
    • probably only useful as an approximation for some items

gamp's People

Contributors

jeffrutledge avatar

Stargazers

Nathaniel Diamant avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.