Skip to content

The goal of this project is to connect customers with local cooks who provide delectable homemade dishes, delivering a convenient and varied culinary adventure.

Notifications You must be signed in to change notification settings

AsliSema/byte-and-bite

Repository files navigation

Byte and Bite B&B Capstone Backend Project

Welcome to B&B! This project aims to connect customers with local cooks who offer delicious homemade food, providing a convenient and diverse culinary experience.

Table of Contents

Project Overview

The purpose of this website is to connect customers who are seeking homemade food options with local cooks who can provide a variety of dishes. The platform supports local cooks by offering them a platform to showcase their culinary skills while catering to the needs of individuals, such as students, who may not have the time to cook.
🔗 Homepage
🔗 API Documentation

Tech Stack

Here are the technologies used in this project:

Node.js
Node.js
MongoDB
MongoDB
Swagger
Swagger
Express.js
Express.js
Jest
Jest
nodemailer
Nodemailer
TypeScript
TypeScript
Tailwind CSS
Tailwind CSS
vscode
Vscode
git
Git
jwt
JWT
github
Github

Project Features

  • Home Page: Displaying information about the project including project overview, team members, and project design files.
  • Contact-us route: A way for users to get in touch with the platform administrators by sending a message to the admin email.
  • User Authentication: Secure signup and login process with options for Google or sign-up/sign-in form.
  • User Profile: Users can manage their personal information, profile pictures, and provide a valid location in Turkey.
  • Dish Listings: Cooks can post dishes along with images, descriptions, categories, and allergy information.
  • Order Management: Users can browse dishes, place orders, and view their order history.
  • Cart: Users can add and remove items from their cart before finalizing orders.
  • Admin Dashboard: Cooks and Admin have extra access for managing dishes and orders.

Project Design

Entity-Relationship Diagram (ERD)

We began the project design phase by creating an Entity-Relationship Diagram (ERD) to visualize the database structure. The ERD helps us understand the relationships between different entities and how data flows through the system. Here's a simplified representation of ERD design:
🔗 Database design

Architecture Design

Our project's architecture was meticulously planned to ensure scalability, maintainability, and efficient performance. We designed a high-level overview of the routes and endpoints that we implemented to provide a seamless user experience. The architecture encompasses:

  • User Authentication: Implemented using Passport.js with Google strategy.
  • Routes and Endpoints: Defined clear routes and endpoints for user authentication, dish management, orders, and user profiles.
  • Database Integration: Utilized MongoDB to store user data, dishes, and order information.
  • Admin Dashboard: Created a separate route for Admin to manage dishes and orders.

Here's a simplified representation of our architecture:
🔗 Architecture design

Functionality

To contribute to this project, you can follow these steps:

  1. Clone the repository
  2. Install dependencies: npm install
  3. Set up environment variables for database connection and authentication.
  4. Run the application: npm start

Contributing

We welcome contributions from the community! Feel free to submit issues and pull requests.

Team Members

Meet the team members who contributed to this project:


Name GitHub Profile
Asli Sema Gultekin AsliSema
AHMAD RAMIN SOLEYMAN Rsmk-code
Khaled Naes Khaled6120
Berra Mahmut baraah-berra
M.NOUR KRIMESH nourkrimesh

Contact With B&B Team

Email: [email protected]

About

The goal of this project is to connect customers with local cooks who provide delectable homemade dishes, delivering a convenient and varied culinary adventure.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published