/Foodfy

Simple recipe website developed using HTML5, CSS3 and VanillaJS.

Primary LanguageJavaScript

Foodfy

➡️ ABOUT THE PROJECT

This project was developed for the final challenge of the Rocketseat Launchstore course. It is a website where users who register and become administrator can create, change and delete recipes, as well as assign them to a specific chef. They can also create, change and delete profiles of such chefs. In addition, they can invite new users, who can be administrators or not.

Users who are not administrators will only have access to the list and profiles of chefs, list and details of recipes. They will also be able to create, change and delete only the recipes created by each of them.

recipes list

Therefore, access control for users and administrators is done through a login system.

Users without registration can only view the list and details of recipes and chefs. However, if they wanted to create a recipe, they will be redirected to the login page.

There are two buttons on the login page:

'Register': users will be redirected to a page to fill out a form and create a password for registration;

'Forgot password?': users will be redirected to a page where they can enter an email, which it will be sent the token to create a new password.

login

Users who are administrators can invite friends to use the site. For inviting, they only need to enter the guest's name and email. The guest will receive an invitation via email with a temporary password to access the system.

Only administrators can change or delete other users, including whether or not they can be administrators as well. Administrators can change their profiles, but to delete their account, they must send an email to the website company.

Another restriction is that only chefs without assigned recipes can be deleted.

delete restriction

The website was developed using responsive design to be accessible on all types of devices.

responsive design

💻 TECHNOLOGIES USED FOR THIS PROJECT:

ℹ️ HOW TO RUN THE APPLICATION

To clone and run this application, you'll need Git, NodeJS, Postgres, Postbird and Npm.

You just need to run the following commands:

# Clone this repository
$ git clone https://github.com/helcioItiyama/Foodfy-Final-Project.git

# Go into the repository
$ cd Foodfy-Final-Project

# Create and Set the database
$ psql -U <username> -c "CREATE DATABASE foodfy"
$ psql -U <username> -d foodfy -f foodfy.sql

# Install dependencies
$ npm install

# Run the app
$ npm start