The application is multivendor eCommerce platform with Role-based access control (RBAC) that empowers multiple vendors to sell their products from one storefront. Multivendor store gives shoppers a huge catalog to choose from and provides sellers with a bigger base of ready-to-buy customers.
The application contains the following core features:
- User - can have three of these roles:
-
CUSTOMERS
- can:- β Customer can buy their favourite products with stripe payment.
- β Customer can save their favourite products, find them quickly and easily at a later time and buy them.
- β When the product is in the wishlist customer can βRemove from wishlistβ.
- β Customer can see their recently viewed product.
- β Customer can search product with autocomplete feature.
- β Customer will get welcome email after sign up.
- β Customer can contact to the authority.
- β Customer can edit their own profile.
- β Customer can change shipping address.
- β Customer can change their password.
- β Customer can see recent orders from their profile.
- β Customer can see our blog post they can comment on post.
- β Customer can subscriber our newsletter.
- β Customer can also unsubscriber our newsletter.
- β Customer will get email after order has been successful purchased.
- β Customer can search orders from their own profile.
- β Customer can review product after successful purchased product.
- β Customer can share purchased product photo.
- β Customer can share thire experience with delivery man-rider.
- β Customer can see order status like Processing/Shipped/Delivered.
- β Customer can share product on social networks and get indirect advertising for your store.
-
VENDOR
- can:-
Product Stock Management
-
Vendor Order Email Notifications.
-
Import/Export Product via CSV.
Under developement: - Vendor can add Coupon for their store and can send newsletter to customer for advertising.
-
-
ADMIN
can:-
Advanced settings for the admin β
- Admin can view and manage vendor and customer list
- General Settings
- Admin can manage new product status.
- Admin can set the order status for withdraw.
- Admin can also enable/disable the permission of review editing for the vendor.
- General Settings
Blog:
- Blog
- title,slug,image,category.
- Tag
- Comments
- Category with filter
- blog pagination max 5
- Can view details of an blog
- Search with blog title,slug and category
Contact:
- User can send mail to the authority.
- Admin can see all contact information.
Note: Admin can't create,update,edit,delete contact info from administration.
Newsletter:
- Subscriber new customer
- User can also unsubscriber our newsletter.
- We have to send newsletter mail every week with new offer/ discusnt/ free shipping/ occasional offter
Note: Admin can't create,update,edit,delete subscriber from administration.
Future developement: - Only authority can send newsletter from there administration.
- Admin can view and manage vendor and customer list
-
-
Prerequisites:
- Python v3.9.7
- Docker v20.10.8
- Django v3.2.6
- Celery v5.1.2
- Redis v3.5.3
- Stripe v2.61.0
- Sentry-sdk v1.4.3
- Cloudinary v1.26.0
To set up the app execute the following guide.
To run the app on your local machine, you need Python 3+, installed on your computer. Follow all the steps to run this project.
- Create virtual environment:
virtualenv env
- Activate virtual environment:
On Linux - source env/bin/activate
On Windows - env/Scripts/activate
- Firstly you need to clone or download my project from github repositories:
git clone https://github.com/hossainchisty/Multi-Vendor-eCommerce.git
- Then enter the corresponding directory:
cd Multi-Vendor-eCommerce
- Install dependencies
pip install -r requirements.txt
- Run local server, and DONE!
python manage.py runserver
Linux or Mac - python3 manage.py runserver
- App in the development mode.
Open http://127.0.0.1:8000 to view it in the browser.
See the section about deployment for more information.