Skip to content

Recipe keeping app. Version 2 of recipe-keeper project.. See readme for updates.

Notifications You must be signed in to change notification settings

femke77/crave-recipes

Repository files navigation

crave-recipes

Welcome to Crave Recipes Version 2! (see recipe-keeper repo for v1)

Crave Recipes is a web application for people who like to cook and bake. The user can search for recipes based on keywords like "cookies" or "mexican" to find new recipes by type of food or cuisine. They can also submit new recipes to our database. For features such as saving recipes and adding personal notes to the recipes, they can sign up for a free account and save as many recipes as they like!

crave image

image

Updates

On new recipe creation, recipes go into a separate table, called submissions, instead of directly going into the table that serves the public. This way Crave developers can review the recipe content first and then move the recipe into the main table if they approve it.

Minor modifications to the look including new fonts.

Signup page now has frontend validation with more readable errors.

Create recipe feature attaches user id if logged in or null if a non-user and redirects to the dashboard if logged in, or the homepage if not.

When recipes are saved from dashboard search, the detailed view does not open and a notification appears for 3 seconds.

New router for getting a recipe and note with a table join.

Notes are now truly editable. The user's previous note now appears in the user note modal text box.

Tech/framework

Crave Recipes is a Node/Expressjs app. The database is a MySql relational type and we used Sequelize as the ORM. Passport serves as the library for authentication, using bcrypt to hash the passwords. Handlebars serves the front end and Bulma provides most of the styling.

How to use

To use the app simply go to:

https://safe-journey-98572.herokuapp.com/

You will be served three random recipes on the home page. Click on a recipe to read the details. Use the search bar to search for other recipes by keyword. Sign up to take advantage of more features. Once you are logged in, you will have a dashboard which will show you all your saved recipes. Use the search bar in the dashboard to find more recipes and click "save recipe" to save them. In the detailed recipe view, click to add or edit a personal note regarding the recipe.

Known issues

Its currently not possible to remove recipes from your saved recipes. There is a link, but it is not active.

Installation (for developers who wish to contribute)

First clone the github repository to your computer. Then in the terminal of the root directory type:

npm i

Help us make the app even better by shooting us a pull request!

Credits and References for Libraries and APIs included

NPM libraries:

Bulma, sequelize, mysql2, mysql, express-handlebars, passport, passport-local, express-session, express, bcrypt.

APIs:

Thank you to the Spoonacular API which provided the recipes for the database.

Developers:

This app was built by The Overachievers for our UCLA Coding Bootcamp Project 2. The team includes me, Meg Meyers on backend/database, Kory Friedman on authentication/sessions, and Miguel De Los Santos on design/frontend.

Motivation

This app is for educational purposes only. And we had a lot of fun building it!!!

About

Recipe keeping app. Version 2 of recipe-keeper project.. See readme for updates.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages