Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Khaled6120 authored Aug 11, 2023
1 parent 4239787 commit 42475e0
Showing 1 changed file with 150 additions and 1 deletion.
151 changes: 150 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 1,150 @@
# backend-capstone-template
# 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](#project-overview)
- [Tech Stack](#tech-stack)
- [Project Features](#project-features)
- [Project Design](#design)
- [Functionality](#functionality)
- [Installation](#installation)
- [Contributing](#contributing)
- [Team Members](#team)
- [Contact US](#Contact_us)

## 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.
<br />
🔗 [Homepage](https://byteandbite.onrender.com)
<br />
🔗 [API Documentation](https://byteandbite.onrender.com/api/docs/)


## Tech Stack

Here are the technologies used in this project:

<table align="center">
<tr>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/nodejs/nodejs-original-wordmark.svg" alt="Node.js" />
<br>Node.js
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/mongodb/mongodb-original.svg" alt="MongoDB" />
<br>MongoDB
</td>
<td align="center">
<img width="80px" src="https://upload.wikimedia.org/wikipedia/commons/a/ab/Swagger-logo.png?20170812110931" alt="Swagger" />
<br>Swagger
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/express/express-original-wordmark.svg" alt="Express.js" />
<br>Express.js
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/jest/jest-plain.svg" alt="Jest" />
<br>Jest
</td>
<td align="center">
<img width="80px" src="https://repository-images.githubusercontent.com/1272424/d1995000-0ab7-11ea-8ed3-04a082c36b0d" alt="nodemailer" />
<br>Nodemailer
</td>
</tr>
<tr>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/typescript/typescript-original.svg" alt="TypeScript" />
<br>TypeScript
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/tailwindcss/tailwindcss-plain.svg" alt="Tailwind CSS" />
<br>Tailwind CSS
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/vscode/vscode-original.svg" alt="vscode" />
<br>Vscode
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/git/git-original.svg" alt="git" />
<br>Git
</td>
<td align="center">
<img width="80px" src="https://cdn.worldvectorlogo.com/logos/jwt-3.svg" alt="jwt" />
<br>JWT
</td>
<td align="center">
<img width="80px" src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/github/github-original.svg" alt="github" />
<br>Github
</td>
</tr>
</table>


## 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:
<br />
🔗 [Database design](https://www.figma.com/file/2LFORVZMP6cjBH9JvXeVML/DB-Schema-Design?type=design&mode=design&t=gqa5Oq9e3ej3AX0t-1)


### 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:
<br />
🔗 [Architecture design](https://www.figma.com/file/MrXH16NsjHrchEP3Bct6PK/Architecture-Diagram?type=whiteboard&t=gqa5Oq9e3ej3AX0t-1
)

## 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](https://github.com/AsliSema) |
| AHMAD RAMIN SOLEYMAN | [Rsmk-code](https://github.com/Rsmk-code) |
| Khaled Naes | [Khaled6120](https://github.com/Khaled6120) |
| Berra Mahmut | [baraah-berra](https://github.com/baraah-berra) |
| M.NOUR KRIMESH | [nourkrimesh](https://github.com/nourkrimesh) |

## Contact With B&B Team

Email: [email protected]

0 comments on commit 42475e0

Please sign in to comment.