Skip to content
/ byte-and-bite Public template
forked from AsliSema/byte-and-bite

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

Notifications You must be signed in to change notification settings

Khaled6120/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

➡️ Used Technologies:

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

➡️ Used Packages:

mongoose

jsonwebtoken

passport

bcrypt

swagger-jsdoc

swagger-ui-express

express-async-handler

http-status-codes

supertest

express-validator

turkey-neighbourhoods

mongoose


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: Admin has extra access for managing users, 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 datas, dishes, carts and order informations.
  • Admin Dashboard: Created a separate route for Admin to manage users, 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: bytebite60@gmail.com

About

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

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 88.8%
  • EJS 11.2%