Skip to content

michseixas/mich-tastyer

Repository files navigation

Tastyer

Tastyer is an innovative and exciting project that aims to revolutionize the way people discover and enjoy food.

Tastyer is designed to make your food journey enjoyable, convenient, and tailored to your unique preferences. It empowers you to explore new flavors, expand your culinary repertoire, and connect with fellow food lovers. So whether you're a novice in the kitchen or a seasoned chef, Tastyer is your ultimate companion for all things delicious.

About us

We are Mich and Erika, the passionate minds behind this delightful recipe page. Our mission is simple: to bring joy and inspiration to your kitchen through mouthwatering dishes that will make your taste buds dance with delight.

Project Image

Deployment

You can check the app fully deployed here https://tastyer.fly.dev.

Work structure

For the "Tastyer" project, we utilized various technologies and libraries to streamline our workflow:

-Axios: Handling HTTP requests and API integrations.

-Bcrypt: Securely encrypting and storing user passwords.

-Cloudinary: Managing image and media uploads.

-MongoDB and Mongoose: Storing and interacting with data in the database.

-Dotenv: Safely storing sensitive information in environment variables.

-Express: Building the backend server and managing API endpoints.

-HBS: Templating engine for dynamic HTML rendering.

-Morgan: Logging HTTP requests and responses.

-Multer: Managing file uploads.

-Nodemailer: Sending email notifications and communication.

-These tools were carefully selected and integrated to ensure efficient development, seamless data handling, and a secure and user-friendly experience for the "Tastyer" project.

Installation guide

  • Fork this repo

  • Clone this repo

Shell Commands

$ cd folder-project

$ npm install

$ npm start

Models

User.model.js

const userSchema = new Schema({

username: { type: String, required: true },

password: { type: String, required: true }

});

Cactus.model.js

const cactusSchema = new Schema({

title: { type: String, required: true },

user: { type: Schema.Types.ObjectID, ref: "User" }

});

User roles

Role Capabilities Property
Admin Can login/logout. Can do ... role: "admin"
Gardener Can login/logout. Can do ... role: "gardener"
Registered User Can login/logout. Can do ...

Routes

Metodo endPoint Requiere Accion
GET / Carga el home
GET /singup Carga el Sign Up
POST /singup const {name, password, city} = req.body Register the user and redirects to /login
GET /login Carga el Log in
POST /login const {name, password} = req.body Logs a user in and redirects to home
GET /post/:id const {id} = req.params Shows the selected post
... ... ... ...

API

This project consumes this API https://tasty.p.rapidapi.com/recipes/list to retrieve data for specific functionality. Provide a brief description of the API's purpose and how it's used in your project.

mich-tastyer

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published