This is an E-commerce web application built completely with Django for the backend and templates from bootstrap for the frontend. The application enables merchants to sell their products, manage the store, receive payments using Paypal and card payments handled by Flutterwave's Rave V2 API and also manage the orders received from customers.
- A store for buying and selling products.
- An admin area for managing and updating the store and orders received from customers.
- Add new products too the store.
- Delete products from the store
- Update product information.
- Create different categories for products on the store.
- Enable and disable user accounts.
- View orders created by customers
- A CRUD app for customer addresses available to customers.
- Customer's wishlist section available to customers.
- Paypal integration for payments through paypal.
- Flutterwave integration for card payments.
- Can be used without need for extra code.
- Clone this repository:
git clone "https://github.com/victornnamdii/django-ecommerce-app.git"
- Access the directory:
cd django-ecommerce-app
- Create virtual environment (optional):
python -m venv venv
source venv/bin/activate
- Install application requirements:
pip install -r requirements.txt
With both Paypal and Flutterwave keys available:
Open the file runstore
and insert your keys in the appropriate places and run the command:
./runstore
and open 127.0.0.1:8000
in your browser.
Without Paypal or Flutterwave keys available (payments would not work): Run the command:
./runstore
and open 127.0.0.1:8000
in your browser.
Screenshots taken on Google Chrome.
If running in production, please open core/settings/base.py
and change DEBUG to False
To create an admin user with permissions to manage the store, run the command:
python manage.py createsuperuser
and follow the instructions.
Open 127.0.0.1:8000/admin
in your browser and log in with your details to enter the admin area.
Screenshots taken on Google Chrome
Here, you can create, read, update and delete user accounts.
Screenshots taken on Google Chrome
Here, you can add new delivery methods to the store with their prices and delivery times.
Admin Side (screenshots taken on Google Chrome)
Customer side (screenshots taken on Google Chrome)
Admin side (screenshots taken on Google Chrome)
Customer side (screenshots taken on Google Chrome)
Here, the admin user can see orders that have been made by customers and can also filter the results depending on the date created, if it has been shipped and also their billing status. Clicking on any of the orders give you full information about them.
Screenshots taken on Google Chrome
You can also update the orders to show that they've been shipped/processed.
Here, you can create, read, update and delete new products, the categories they belong to and their product types.
Product Types are a sub-section of Categories. E.g a Music Tape is a product type, Tape is the Categoory.
Screenshots taken on Google Chrome