Skip to the content.

User Guide

Introduction

Expiry Eliminator is a desktop app for managing the freshness of ingredients in your kitchen and the recipes you want to cook, optimized for use via a Command Line Interface (CLI). If you are a young adult living in your own home, and you can type fast, Expiry Eliminator can help you manage your ingredients and recipes.

Quick Start

  1. Ensure that you have Java 11 or above installed.
  2. Download the latest version of ExpiryEliminator from here.
  3. Copy the file to the folder you want to use as the home folder for this program.
  4. Open a command prompt / PowerShell / terminal window and run the program with java -jar [filepath of jar file]. You should see the following:

  1. Key features to try:

Features

Notes about the command format:


Viewing help: help

Shows a help message explaining the various commands.

Format: help


Exiting the program: bye

Exits the program.

Format: bye


Adding an ingredient: add

Adds an ingredient to the ingredient repository.

Format: add i/INGREDIENT [u/UNIT]

Example of usage:

Output:


Incrementing quantities for an ingredient: increment

Increments the specified quantities for the specified ingredient in the ingredient repository.

Format: increment i/INGREDIENT q/QUANTITY e/EXPIRY_DATE

Example of usage:

Output:

increment i/Chicken q/2 e/2021-11-08
    ____________________________________________________________________________________________________
     I've incremented this ingredient by 2 kg:

     Chicken (qty: 2 kg)
     - 2 kg (2021-11-08)
    ____________________________________________________________________________________________________


Decrementing quantities for an ingredient: decrement

Decrements the specified quantities for the specified ingredient in the ingredient repository.

Format: decrement i/INGREDIENT q/QUANTITY

Example of usage:

Output:


Updating units of an ingredient: update units

Updates the units of the specified ingredient in both the ingredient repository and recipe list.

Format: update units i/INGREDIENT u/UNIT

Example of usage:

Example of incorrect usage:

Output:


Listing all ingredients: list

Shows a list of all ingredients in the ingredient repository, along with their quantities and expiry dates.

Format: list

Example of usage:

Output:

     ____________________________________________________________________________________________________
     Here are the ingredients in your list:

     Chicken (qty: 4 kg)
     - 2 kg (2021-11-08)
     - 2 kg (2021-11-15)

     Red Apple (qty: 10)
     - 10 (2021-10-28)

     Salt (qty: 200 kilograms)
     - 200 kilograms (2021-10-22)

     You have a total of 3 ingredient(s)
    ____________________________________________________________________________________________________


Listing ingredients that are expiring: list expiring

Shows a list of all ingredients in the ingredient repository that are expiring within one week, along with their quantities and expiry dates.

Format: list expiring

Example of usage:

Output:


Listing ingredients that have expired: list expired

Shows a list of all ingredients, its quantity and expiry dates, that have expired.

Format: list expired

Example of usage:

Output:


Viewing a specific ingredient: view

Shows a specific ingredient with its quantity and expiry date.

Format: view i/INGREDIENT

Example of usage:

Output:


Deleting an ingredient: delete

Deletes the specified ingredient from the ingredient repository.

Format: delete i/INGREDIENT

Example:

Output:

delete i/red appel
    ____________________________________________________________________________________________________
     I've deleted this ingredient for you:
     Red Appel (qty: 0)

     Now you have 0 ingredient(s)
    ____________________________________________________________________________________________________


Deleting all expired ingredients: delete expired

Removes all expired batches (not the entire ingredient) of ingredients from the ingredient repository.

Format: delete expired

Example of usage:

Output:

Adding a recipe: add recipe

Adds a recipe with its respective ingredients and quantities to the recipe list.

Format: add recipe r/RECIPE i/INGREDIENT... q/QUANTITY...

Example of usage:

Output:


Deleting a recipe: delete recipe

Deletes a recipe from the recipe list.

Format : delete recipe r/RECIPE

Example of usage:

Output:

delete recipe r/Chicken Soup
    ____________________________________________________________________________________________________
     I've deleted this recipe for you:
     
     Chicken Soup
     - Chicken (qty: 1)
     - Salt (qty: 20)
     
     Now you have 2 recipe(s)
    ____________________________________________________________________________________________________


Removing ingredients when a recipe is cooked: cooked

Removes certain amount of ingredients from the ingredient repository based on the recipe that is cooked.

Format: cooked r/RECIPE

Example of usage:

Output:


Listing recipes that can be cooked: list recipes I can cook

Returns a list of recipes which the user can cook with the ingredients they currently have in their ingredient repository.

Format: list recipes i can cook

Example of usage:

Output:


Listing all recipes: list recipes

Returns a list of recipes that are stored in the recipe list.

Format: list recipes

Output:


Viewing a specific recipe: view recipe

Views a specific recipe in the recipe list, along with the corresponding ingredients and quantities.

Format: view recipe r/RECIPE

Example of usage:

Output:

view recipe r/Pork Soup
    ____________________________________________________________________________________________________
     Here is the recipe in your recipe list:

     Pork Soup
     - Pork (qty: 10)
     - Salt (qty: 5)
    ____________________________________________________________________________________________________


Updating recipe: update recipe

Updates a recipe by modifying the quantity of ingredients in that recipe, or simply adding or deleting ingredients in the recipe.

Format: update recipe r/RECIPE i/INGREDIENT... q/QUANTITY...

Example of usage:

Output:


Creating a shopping list of ingredients for a list of recipes: shopping list

Takes in multiple recipes the user wants to cook, and generates a shopping list of ingredients that the user does not have and needs to buy.

Format: shopping list r/RECIPE...

Example of usage:

Output:


FAQ

Q: How do I transfer my data to another computer?

A: Download the app on the other computer. Then, copy the data from the original computer (i.e. data folder in the ExpiryEliminator home folder) and overwrite the data in the ExpiryEliminator home folder on the other computer.

Command Summary

  1. Viewing help
    • Command: help
  2. Exiting the program
    • Command: bye
  3. Adding an ingredient
    • Command: add i/INGREDIENT [u/UNIT]
    • E.g.: add i/Red Apple
    • E.g.: add i/Salt u/g
  4. Incrementing quantities for an ingredient
    • Command: increment i/INGREDIENT q/QUANTITY e/EXPIRY_DATE
    • E.g.: increment i/Red Apple q/6 e/2021-10-22
    • E.g.: increment i/Salt q/200 e/2021-10-22
  5. Decrementing quantities for an ingredient
    • Command: decrement i/INGREDIENT q/QUANTITY
    • E.g.: decrement i/Red Apple q/2
    • E.g.: decrement i/Salt q/10
  6. Updating units of an ingredient
    • Command: update units i/INGREDIENT u/UNIT
    • E.g.: update units i/salt u/kilograms
    • E.g.: update units i/salt u/
  7. Listing all ingredients
    • Command: list
  8. Listing ingredients that are expiring
    • Command: list expiring
  9. Listing ingredients that have expired
    • Command: list expired
  10. Viewing a specific ingredient
    • Command: view i/INGREDIENT
    • E.g.: view i/salt
  11. Deleting an ingredient
    • Command: delete i/INGREDIENT
    • E.g. delete i/Red Apple
  12. Deleting all expired ingredients
    • Command: delete expired
  13. Adding a recipe
    • Command: add recipe r/RECIPE i/INGREDIENT... q/QUANTITY...
    • E.g.: add recipe r/Chicken Soup i/Chicken q/300 i/Salt q/10
    • E.g.: add recipe r/Chicken Soup i/Chicken i/Salt q/300 q/10
  14. Deleting a recipe
    • Command : delete recipe r/RECIPE
    • E.g.: delete recipe r/Chicken Soup
  15. Removing ingredients when a recipe is cooked:
    • Command: cooked r/RECIPE
    • E.g.: cooked r/Chicken Soup
  16. Listing recipes that can be cooked
    • Command: list recipes i can cook
  17. Listing all recipes
    • Command: list recipes
  18. Viewing a specific recipe
    • Command: view recipe r/RECIPE
    • E.g.: view recipe r/Curry Chicken
  19. Updating quantities of ingredients in a recipe
    • Command: update recipe r/RECIPE i/INGREDIENT... q/QUANTITY...
    • E.g.: update recipe r/Apple Pie i/apple q/3 i/flour q/200
  20. Creating a shopping list of ingredients for a list of recipes
    • Command: shopping list r/RECIPE...
    • E.g.: shopping list r/Chicken Soup
    • E.g.: shopping list r/Chicken Soup r/Pork Soup