An online marketplace application with buyer accounts, product search and suggestions, shopping cart, order management, and payment processing with PayPal - developed using React, Redux, Node, Express and MongoDB.
Registration Features
Feature | Coded? | Description |
---|---|---|
Local | ✔ | Ability to Register Locally |
✔ | Ability to Register With Google | |
✔ | Ability to Register With Facebook | |
Confirmation | ✔ | Ability to Receive Confirmation Email |
Users Features
Feature | Coded? | Description |
---|---|---|
Register a User | ✔ | Ability of Register a new User |
See Users | ✔ | Ability to see Registered Users |
Block User | ✔ | Ability of Block a User |
Update User | ✔ | Ability to Update User Info |
Products Features
Feature | Coded? | Description |
---|---|---|
Add a Product | ✔ | Ability of Add a Product on the System |
List Products | ✔ | Ability of List Products |
Edit a Product | ✔ | Ability of Edit a Product |
Delete a Product | ✔ | Ability of Delete a Product |
Stock | ✔ | Ability of Update the Stock |
Stock History | ✔ | Ability to see the Stock History |
Categories Features
Feature | Coded? | Description |
---|---|---|
Add a Category | ✔ | Ability of Add a Category on the System |
List Category | ✔ | Ability of List Category |
Edit a Category | ✔ | Ability of Edit a Category |
Delete a Category | ✔ | Ability of Delete a Category |
Purchase Features
Feature | Coded? | Description |
---|---|---|
Create a Cart | ✔ | Ability of Create a new Cart |
See Cart | ✔ | Ability to see the Cart and it items |
Remove a Cart | ✔ | Ability of Remove a Cart |
Add Item | ✔ | Ability of add a new Item on the Cart |
Remove a Item | ✔ | Ability of Remove a Item from the Cart |
Checkout | ✔ | Ability to Checkout |
Checkout Features
Feature | Coded? | Description |
---|---|---|
Local | ✔ | Ability to Pay With Local Balance |
PayPal | ✔ | Ability to Pay With PayPal |
History | ✔ | Ability To See Payment History |
Notification | ✔ | Ability to Receive Payment Details On Email |
Contact Features
Feature | Coded? | Description |
---|---|---|
Receive | ✔ | Ability to Receive Messages |
Send | ✔ | Ability to Send Message |
History | ✔ | Ability To See All Messages |
Chat Features
Feature | Coded? | Description |
---|---|---|
Receive | ✔ | Ability to Receive Personal Message |
Send | ✔ | Ability to Send Personal Message |
Reviews Features
Feature | Coded? | Description |
---|---|---|
Comment | ✔ | Ability to Leave Review |
Star | ✔ | Ability to Leave Rating |
Switch | ✔ | Ability To Hide Review |
- React
- React-facebook-login
- React-google-login
- React-paypal-express-checkout
- Redux
- Redux-form
- Redux-thunk
- Axios
- Node/Express
- MongoDB/Mongoose
- Nodemailer
- Passport
- Multer
- JWT
- Joi
- Node.js installed
- MongoDB connection
- Clone repo on your local machine:
$ git clone https://github.com/IrakliIakobishvili/Ecommerce.git
- Install server-side dependencies:
$ cd Ecommerce
$ npm install
- Install client-side dependencies:
$ cd client
$ npm install
- In index.js file (config folder) replace mongoDB, Google, Facebook and Email secret keys with your own.
oauth: {
google: {
clientID: "##########",
clientSecret: "##########"
},
facebook: {
clientID: "##########",
clientSecret: "##########"
}
},
paypal: {
clientID: "##########"
},
MONGODB_URI: "##########"
- Build the app:
$ npm run build
- Execute the app:
$ cd ..
$ npm run start-dev
- App now running on
localhost:5000
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- React - JavaScript Library for Building User Interfaces
- Redux - Predictable State Container for JavaScript Apps
- Node - JavaScript Runtime Environment
- MongoDB - Fully Managed Cloud Database
- Tekle Macharadze - 0amon0
- Khatia Akhalkatsishvili - akhalkatsishvili
- Irakli Iakobishvili - IrakliIakobishvili
This project is licensed under the MIT License - see the LICENSE.md file for details