Skip to content

garciamelody/kitchen-keeper

Repository files navigation

Kitchen Keeper

An app designed to help keep recipes organized and keep an inventory of ingredients.

kitchen-keeper

The user can edit their recipe cards easily.

kitchen-keeper2

Ingredients and instructions can be marked as the user works on their recipe to help them keep track.

kitchen-keeper3

Users can create new recipes and easily add as many input fields as their recipes require.

kitchen-keeper4

Users can organize their pantry items based on storage categories. Users can add the weight and quantities of each item. Users can also edit their pantry item specifications or remove items entirely from their pantry tracker. kitchen-keeper5

What is it made with?

EJS, JavaScript, CSS, Node.js, Express.js, MongoDB, Mongoose

EJS

This app uses EJS to generate HTML using JavaScript, allowing the app to render recipes and pantry items based on user data.

JavaScript

JavaScript handles what happens when the user interacts with things like buttons. It removes recipe ingredients or instructions as the user edits their recipe. It also appends new inputs to the recipe card page, allowing users to add more ingredients and instructions as needed.

Node.js

Node.js is responsible for the server-side aspect. It uses JavaScript to build scalable applications.

Express.js

Express.js is a framework for Node.js that comes with lots of features. It is responsible for routing and middleware throughout the app.

MongoDB

MongoDB is the database that stores users' data, such as the data tied to recipe cards and pantry items.

Mongoose

Mongoose is responsible for defining Schema Objects that map directly to MongoDB. Organizing user data this way makes it easy to reference throughout the app.

What architecture is used?

MVC architecture organizes the app into three components: Model, View, and Controller.

The View component holds all of the ejs files the user sees and interacts with.

The Model component holds all of the Mongo schemas that give structure to our user data. It is responsible for adding and retrieving data from the database.

The controller component acts as the middleman between the Model and View components. The Controller will process requests made through View components and relay requests related to data to the Model component. The model component will then retrieve the data needed and "pass it" to the Controller, which will then interact with the View component to have the data rendered in HTML.

About

An app designed to help keep recipes organized and keep an inventory of ingredients.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published