E-commerce website using MERN stack (Mongo, Express, React, Node).
I have built this App for a client from Romania. Please translate to English from browser when you go to my live App in order to see the products in English.
The back-end is in the root directory. 'index.js' is the main file, 'src' folder contains the source code of the API designed following the MVC(Model, View, Controller) design pattern.
The front-end is in the 'client' folder from the root directory.
- ReactJs for the front-end
- NodeJs & Express for the back-end
- MongoDB for the database
- Auth0 for Authentification
- Mailjet for Sending Email
- Admins manage and control the Products Collection
- Product search feature
- Shopping Cart
- Checkout process
- User profile
- History of orders
- Status of Order
- Email order to the restaurant
- special offers
- product extras
- orders and offers mangement via admin panel
- https configuration (see
https
branch)
- node
- npm
- mongodb
- material-ui
- react-bootstrap
- react-router-dom
- mongoose
- cors
- nodemon
- ESLint
- Prettier
Clone the repo
git clone git@github.com:SilviuAndreiChivescu/pizza-website.git
Create a copy of '.env.example' file from the root directory. Rename it to '.env', open it and replace the placeholder. Do the same in the client folder.
Install dependencies for server & client
npm install && npm run client-install
Start the server
npm run start
Open new terminal and start front-end
npm run client-start
Server runs on http://localhost:3001 and client on http://localhost:3000
Auth0 - https://auth0.com/blog/complete-guide-to-react-user-authentication/
Mailjet - https://www.npmjs.com/package/node-mailjet
Deploy to Heroku - https://coursework.vschool.io/deploying-mern-app-to-heroku/
MongoDB Connection - https://youtu.be/wgGkF4k9c7A
This project is licensed under the MIT License