https://github.com/dhanya-abhirami/shopbuddy
Interactive Online Marketplace website that facilitates product buying and selling :shopping_cart:
https://github.com/dhanya-abhirami/shopbuddy
amazon-clone e-commerce flipkart-clone shopping-site
Last synced: 7 months ago
JSON representation
Interactive Online Marketplace website that facilitates product buying and selling :shopping_cart:
- Host: GitHub
- URL: https://github.com/dhanya-abhirami/shopbuddy
- Owner: Dhanya-Abhirami
- Created: 2020-07-15T14:24:57.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-08-04T06:14:51.000Z (about 2 years ago)
- Last Synced: 2025-04-15T00:11:49.667Z (7 months ago)
- Topics: amazon-clone, e-commerce, flipkart-clone, shopping-site
- Language: JavaScript
- Homepage:
- Size: 317 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
ShopBuddy
Interactive Online Marketplace website that facilitates product buying and selling
View Demo
·
Report Bug/Request Feature
The site is made for educational purposes!
### Features
- [x] Authentication
- [ ] Confirm Password
- [ ] Password Reset
- [x] Signup with email ID
- [ ] Signup OAuth (Gmail,Github,Twitter)
- [ ] Verify Email
- [x] Role-based Authorization
- [x] Buyer
- [x] Browse Product List
- [ ] Search products
- [ ] Sort & Filter products
- [ ] Recommendation
- [x] Product Detail Page
- [x] Add to Cart
- [x] Checkout using Stripe
- [ ] Checkout using other services (Razorpay)
- [ ] Order Placed email confirmation
- [x] Order History
- [ ] Scheduled Email (Cron Job) for users with cart not checked out
- [x] Seller
- [x] Create products
- [x] Upload images to Cloud Storage(Cloudinary)
- [x] Security, Validation, Error & Exception Handling
# REST APIs
Swagger Documentation
```
```
Role Name Permissions
roles/viewer Permissions for read-only actions that do not affect state, such as viewing (but not modifying) existing resources or data.
roles/editor All viewer permissions, plus permissions for actions that modify state, such as changing existing resources.
roles/owner All editor permissions and permissions for the following actions: Manage roles and permissions for a project and all resources within the project; Set up billing for a project.
### Screenshots
Home Screen | Product Detail | Cart | Checkout
:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:
![]()|![]()|![]()|![]()|
Order History | Product Detail | Cart | Checkout
:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:
### Built With
### Tech stack
* Database hosted in [MongoDB Atlas](https://www.mongodb.com/cloud/atlas)
* Backend - Node JS (Express and [Axios](https://www.npmjs.com/package/axios))
* Frontend - React JS
* Payments handled through [Stripe](https://stripe.com/en-in)
* Images in [Cloudinary](https://cloudinary.com/)
### Setup
1. Get a free API Key from MongoDB Atlas, Cloudinary, Stripe
2. Clone the repo
```console
dhanya@dhanya:~$ git clone https://github.com/Dhanya-Abhirami/ShopBuddy.git
dhanya@dhanya:~$ cd ShopBuddy
```
3. Enter your API keys in next.config.js
```json
MONGO_SRV: "",
JWT_SECRET: "",
CLOUDINARY_URL: "",
STRIPE_SECRET_KEY: ""
```
4. Build Docker Image
```console
dhanya@dhanya:~/ShopBuddy$ make build
```
5. Run
```console
dhanya@dhanya:~/ShopBuddy$ make run
```
6. Stop
```console
dhanya@dhanya:~/ShopBuddy$ make stop
```
### References
* [Reed Barger](https://github.com/reedbarger/react-reserve)
* Colours inspired from [Flipkart](https://www.flipkart.com/)