Table of Contents
This is MERN Stack simple e-commerce web application. There is two roles as Customer and Admin.
* Customer can view the all products and search products.
* Before buy or add to the cart customer must login or register to the system.
* After the add to the cart customer can place an order.
* Admin must login to the system (if you want to be an Admin you should register as a customer and go to your mongodb database --> user collection --> edite the role attribute as 1 [role:'1']).
* Admin can create update delete categories.
* Admin can create update delete products.
* Admin can conform the customer's orders.
-
MongoDB - MongoDB is a source-available cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas.
-
Express.js - Express.js, or simply Express, is a back end web application framework for Node.js, released as free and open-source software under the MIT License. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js.
-
React.js - React is a free and open-source front-end JavaScript library for building user interfaces based on UI components.
-
Node.js - Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser.
Other used Packages
server side:- bcrypt
- cloudinary
- concurrently
- cookie-parser
- jsonwebtoken
- express-fileupload
- cors
client side:
- react-toastify
- axios
- react-router-dom
- bcrypt
- Must have an Installed Node.js to your local machine
- Must have a MongoDB Account
- Must have a Cloudanary Account
-
Clone the repo
git clone https://github.com/amila1998/nimi-e-commerce-web-app.git
-
Install NPM packages
npm run install-all
-
Create
.env
file inside the server folder and Enter Following KeysMONGODB_URL = (your mongoDB Url) ACCESS_TOKEN_SECRET = adasdhasdhauiqwbqw0+ajdakjdhasd REFRESH_TOKEN_SECRET = ajdasdadwuiqwjhasvdasdajdahdka CLOUD_NAME=(Your Cloudanary Name) CLOUD_API_KEY=(Your Cloudanary Api Key) CLOUD_API_SECRET=(Your Cloudanary SECRET Key)
-
To Run the Application
npm run dev
or to run the Server only
npm run server
and to run the client
npm run client
Server Running on http://localhost:5000
Default Client Runnig on http://localhost:3000
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch
- Commit your Changes
- Push to the Branch
- Open a Pull Request
Your Name - @real_amiladevin - amiladevin@gmail.com
Project Link: (https://github.com/amila1998/nimi-e-commerce-web-app