Skip to content
This repository was archived by the owner on Nov 10, 2024. It is now read-only.
/ Hashed Public archive

Hashed allows you to create a shopping list, pantry list, and save your favorite recipes.

Notifications You must be signed in to change notification settings

Mjheverett/Hashed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HASHED

Overview:

With Hashed you can create a shopping list, pantry list, and save your favorite recipes for later. Completed your grocery run? Add those items straight to your pantry. Running low on your favorite snack? One button click and it's back on the list. You can also add everything you need straight from your saved recipes to ensure you never miss an ingredient.


The Team:

Primary Team Role: Design

Contributions: Assisted with initial API setup and worked on design elements throughout.


Primary Team Role: UI/UX

Contributions: Bulma enthusiast, layout and formatting guru.


Ryan Schniederjan: https://github.com/rynoschni

Primary Team Role: API integration & graphics

Contributions: Setup the API script for the Grocery and Pantry routes. Built the API auto-fill in the search to better guide users with their selections. Created the user profile page, route, and model for user to update their information. Created the logo, homepage and hero images.


Primary Team Role: Database Routes

Contributions: JavaScript wizard. Built routes to connect pages and data throughout pages. Created DOM manipulation within each page to provide improved user experience and allow both frontend and backend worked together to update pages.


What We Used:

Languages:

  • Node.js
  • Express
  • PostgreSQL
  • HTML5
  • CSS
  • JavaScript

Frameworks:

  • Bulma

APIs:


MVP (Minimum Viable Product):

  • Add and remove items to a Grocery list.
  • Mark items as completed while shopping.
  • Recipe list to store and view ingredients and instructions.

Stretch Goals Completed:

  • Recipe search by name and url.
  • Move items between grocery and pantry lists.
  • Add all items from recipe to grocery list.
  • Edit quantities of items on grocery and pantry lists.
  • Edit item names and units on grocery and pantry lists.

Stretch Goals Future:

  • Automatically merge quantities of the same items when added to lists.
  • Recipe editing and creation.
  • Nutritional information.
  • User settings for fields to view.
  • Recipe Sharing and/or community.

Challenges & Solutions:

Some of the biggest challenges we faced with this project build included:


Challenge: Create a link between recipes and grocery list.

Solution: Set up a specific route to handle the movement of items to the grocery list. Connected the two areas through this link. All data is presented in a string so had to set up logic to parse the string into a usable version for the database and add each item properly. Also, ensured that data was population from recipe add to database by setting up string to build properly from array provided by API JSON.


Challenge: Create a solid DOM / Database interaction to make updating items easier on Pantry and Grocery lists.

Solution: Utilized DOM manipulation through Vanilla JS in a scripts file to create responsive design that added and removed elements as the user interacted with the page. Utilized forms throughout the page to collect data that was changed and send it back to the database. This required the use of some hidden fields and some additional logic to tie the updated data to the database without displaying unwanted data to the user.


Screenshots:

Recipe Search and List:

Recipe Page:

About

Hashed allows you to create a shopping list, pantry list, and save your favorite recipes.

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •