/greatkart-django

Full Stack web E-Commerce App

Primary LanguageJavaScript

Welcome to GreatKart Django Web application.

Explanation

GreatKart is an eCommerce application built with Python Django Framework. Some of the features of this project includes custom user model, categories and products, Carts, Incrementing, Decrementing and removing car items, Unlimited Product image gallery, Orders, Payments, after-order functionalities such as reduce the quantify of sold products, send the order received email, clearing the cart, Order completion page as well as generating an invoice for the order. Also we have a Review and Rating system with the interactive rating stars that even allows you to rate a half-star rating. My account functionalities for the customer who can easily edit his profile, profile pictures, change his account password, and also manage his orders and much more.

  • Django Custom User Model, Category & Media Files
  • Working with Products
  • Context Processors & Product Details
  • Carts Functionality
  • Add to Cart using Session Keys, Increment/decrement/remove Cart Items
  • Fixing Cart Bugs & Context Processor for Cart Item Counter
  • Paginator & Search
  • Product Variations & Variation Manager
  • Adding the Variation in Cart, Grouping Cart Item Variations
  • Registration, Login with Token Based Verification & Message Alerts
  • User Account Activation & Activation Link Expiry
  • Forgot Password with Secure Validation Links
  • Cart Checkout, automatically assign the Cart Items to Logged-in User
  • Orders & Order Number Generation
  • Payment Gateway Integration & Place Order
  • After Order Functionalities
  • Review and Rating System
  • Two Factor Checks for Submitting Reviews (Login check & Product purchase check)
  • Rating Average & Review Count Calculation
  • My Account Functionalities
  • Product Gallery with Unlimited Images
  • Django Security Measures

1

2

3

4
5 6

Clone the repository git clone https://github.com/samsorrahman/greatkart-django.git

Navigrate to the working directory

Open the project from the code editor code . or atom .

Create virtual environment python -m venv env

Activate the virtual environment source env/Scripts/activate

Install required packages to run the project pip install -r requirements.txt

Rename .env-sample to .env

Fill up the environment variables: Generate your own Secret key using this tool https://djecrety.ir/, copy and paste the secret key in the SECRET_KEY field.

Your configuration should look something like this:

SECRET_KEY=47d)n05#ei0rg4#)@fuhc%$5+0n(t%jgxg$)!1pkegsil4c% DEBUG=True EMAIL_HOST=smtp.gmail.com EMAIL_PORT=587 EMAIL_HOST_USER=youremailaddress@gmail.com EMAIL_HOST_PASSWORD=yourStrongPassword EMAIL_USE_TLS=True

  1. Create database tables python manage.py migrate

  2. Create a super user python manage.py createsuperuser

  3. Run server python manage.py runserver

  4. Login to admin panel - (http://127.0.0.1:8000/securelogin/)

  5. Add categories, products, add variations, register user, login, place orders and EXPLORE SO MANY FEATURES