• Stars
    star
    396
  • Rank 108,775 (Top 3 %)
  • Language
    Python
  • License
    MIT License
  • Created over 3 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

The Django-Ecommerce is an open-source project initiative and tutorial series built with Python and the Django Framework.

veryacademy

Django E-commerce Tutorial Series

Learn Python and the Django Framework by building a e-commerce website
The Django E-commerce project is an open-source initiative and tutorial series. Learn from a beginner level how to build an e-commerce website.

Please join our active, growing community:
Website (Coming Soon) | Twitter | YouTube

Aims of this course

The aims of this course is to:

  • learn the Django framework
  • learn how to build, test and deploy a Django application

Course Introduction

The Django E-commerce Tutorial Series is designed for students who wants to learn the Django Framework by building an e-commerce application. This course is a great way to start learning Python and the Django Framework. We start from a beginners level slowly moving into more advanced topics. I have tried to design this course to be modular so that you could also focus in on particular subjects, tutorials or aspects of Django should you prefer this mode of learning.

On this course you will be taught a wide range of skills, here are a few topics that we will be learning:

  • Django URLs, models, views
  • Django Templating
  • Introduction to Unittest
  • Testing with Pytest
  • Working with Django and Docker
  • Deploying Django Applications

Tutorials

The tutorials, found here on our YouTube channel take you through the steps of developing an e-commerce application with Python Django, predominately deploying the Django template system.

Prerequisites

  • Install Python onto your PC/Laptop
  • Optional - Visual Studio Code Editor
  • Tutorials use Windows OS (you can use other OS but it might require additional steps not detailed in the tutorials)

Who is this course for

This course tries to cater for many types of learners:

  • new developers,
  • not so new developers,
  • degree students,
  • Everyone else who is looking to learn Django

Course Content

Part-1 Building models, views and testing
This first tutorial is most definitely aimed at Django beginners where we cover the basics of developing Django views, URLS, models and get started with testing our application. By the end of this tutorial you will have a working product catalogue which will form the basis of our e-commerce application.

Link to Tutorial https://youtu.be/UqSJCVePEWU
Part-2 Build an e-commerce basket with session handling
In this tutorial we go through the process of building a shopping basket using sessions to handle managing data anonymous connections, saving products into a shopping cart in preparation to be purchased. We implement Ajax to handle the front-end and work through stage by stage the functionality needed to save, update and delete the basket data.

Link to Tutorial https://youtu.be/VOwfGW-ZTIY
Part-3 Build a user, payment and order management system
In this tutorial we go through the process of building the user functions needed to allow users to login and manage their account. We then work through building a payment system using stripe and finally create an ordering backend to capture the customer orders.

Link to Tutorial https://youtu.be/ncsCnC3Ynlw
Part-4 Refactoring the E-commerce Store Templates
In this tutorial we go through the process of refactoring the templates in our project.

Link to Tutorial https://youtu.be/S9-aRoLrs7U
Part-5 Multi-Product Types Database Implementation
In this tutorial we go through the process of developing a database for multiple products with multiple attributes.

Link to Tutorial https://youtu.be/hGg13rzvoNY
Part-6 Managing multiple addresses CRUD and UUID
In this tutorial we go through the process of further normalizing the accounts table to allow users to save more than one address. We build in Django a new address table and then start to update the UI in the dashboard, finally we work through a simple CRUD feature with Django views.

Link to Tutorial https://youtu.be/8SP76dopYVo
Part-7 E-commerce Customer Wish List
In this tutorial we go through the process of building a purely Django user wish list to allow users to create a list of favorite products.

Link to Tutorial https://youtu.be/OgA0TTKAtqQ
Part-8 PayPal Integration
In this tutorial we go through the first steps of integrating PayPal into our e-commerce store.

Link to Tutorial https://youtu.be/smSl2ahkfNw
Part-9 Refactor Folder Structure & Pytest Introduction
In this Django tutorial we discuss Django folder structures and prepare our application ready for scaling further. We prepare the app for the next step of testing, installing Pytest and I take you through the first steps of working with Pytest to test your application.

Link to Tutorial https://youtu.be/ZE7dM0XmUoA
Part-10 Pytest Testing 1
In this Django tutorial we start to test with Pytest, Factory Boy the apps we have build previously.

Link to Tutorial

Community Driven Content

I activity try and promote feedback to taylor courses to your needs and wishes. Here is a list of features requested by community. If you would like to request any other feature not listed here - please visit our YouTube channel and make a comment.

Next Planned Tutorials

  • Tests for whole system

Introduction Phase Suggestions

  • Create Data fixtures (if possible community support for multiple languages)
  • Setup or custom commands for project initial setup
  • Documentation - Class Diagrams and Sequence Diagrams
  • Basic/different search techniques
  • Product Tags/Search
  • Email payment confirmation and PDF receipts
  • Product filter searching
  • Rating / Feedback
  • Coupon System

Intermediate Level Suggestions

  • Internationalization
  • Change to CBV (or not - up to you)
  • PostgreSQL (via Docker)
  • Custom admin views and management tasks
  • Managing sales or season sales
  • Store locator to your project
  • Email list + bulk emailing
  • Notifications
  • Request quotations for bulk orders

Advanced Level Suggestions

  • Haystack / Elasticsearch
  • User Recommendations/Recommender systems
  • Cache
  • Live Chat - Help/Support (Channels)
  • Processing / working with images (compression etc)
  • Generating product statistics
  • Allow users to sell products

Deployment Suggestions

  • Docker deployment configuration
  • Heroku deployment
  • Digital Ocean deployment

Contributing

This course welcomes contributions and suggestions. At present, we are not accepting any code contributions. When the tutorials have finished the project will be open to welcome code contributions. If you find any errors or have trouble with any of our code - please get in contact with us through our YouTube channel.

Instructor

Zander, the founder of Very Academy has over 20 years of development and educational lecturing experience. He is now focused on developing free technical courses and resources on a range of subjects.

License

MIT License

More Repositories

1

docker-mastery-with-django

Docker Mastery with Django is an open-source initiative and tutorial series. Learn from a beginner level how to use Docker, compose and Kubernetes for django projects.
HTML
207
star
2

Django-ORM-Mastery-DJ003

Master the Django ORM - Object-Relational Mapper. Learn to use the Django ORM in your Django applications.
Python
116
star
3

django-ecommerce-project-v2

Python
81
star
4

YT_FastAPI_Beginner_Fast-Track

Python
73
star
5

YT-Django-DRF-Simple-Blog-Series-Part-1

HTML
65
star
6

yt-nginx-mastery-series

JavaScript
63
star
7

pytest-mastery-with-django

A Pytest Django Course - Learn how to implement Pytest with Django.
Python
62
star
8

django-learning-pathway

(Currently in development) Learning pathways for learning Django.
51
star
9

YT_FastAPI_Celery_Redis_Flower_Introduction

Python
50
star
10

YT-Django-DRF-Simple-Blog-Series-JWT-Part-3

HTML
44
star
11

YT-Django-Project-Chatroom-Getting-Started

Python
44
star
12

Django-4.x-ORM-Course

Python
43
star
13

YT-Django-Theory-Create-Custom-User-Models-Admin-Testing

Python
34
star
14

YT-Django-Docker-Compose-Celery-Redis-PostgreSQL

Python
34
star
15

YT-Django-CBV-Mini-Series

Python
29
star
16

YT-Vue-Django-Auth-JWT

Python
27
star
17

YT_NextJS_DRF_Ecommerce_2021_Part1

Python
24
star
18

YT-Vue-with-DjangoRestAPI

Python
22
star
19

FastAPI_AWS_Lambda_Deployment

Python
22
star
20

YT_FastAPI_Beginner_Fast-Track-GraphQL

Python
21
star
21

YT_FastAPI_User_Token_Authentication

Python
21
star
22

YT-Django-DRF-Simple-Blog-Series-Social-Login-Part-9

HTML
20
star
23

YT-Django-Iris-App-3xj9B0qqps

Python
19
star
24

YT-Django-Celery-Series-Part3-Schedule-Tasks

Python
19
star
25

Django-Permissions-Mastery

Python
18
star
26

YT-Django-Allauth-Google

Python
17
star
27

YT-Django-DRF-Simple-Blog-Series-File-Uploading-Part-8

HTML
16
star
28

YT-Django-Infinite-Scroll-Example-1

JavaScript
14
star
29

YT-Django-DRF-Simple-Blog-Series-Simple-CRUD-Part-7

HTML
14
star
30

YT-GraphQL-Django-Get-Started

Python
14
star
31

YT_Inline_Formset_CBV_Ex1

Python
13
star
32

YT_Django_Two_Factor_Example

Python
12
star
33

YT_Django_TensorFlow_Image_Classification_Basic

Python
12
star
34

YT-GraphQL-User-Authentication-GraphQL-Auth

Python
12
star
35

YT-Django-Docker-Compose-Introduction

Python
11
star
36

YT-Django-API-Quiz-Part1

Python
11
star
37

YT-Django-RestAPI-React-Frontend

Python
11
star
38

Django-Tutorials

JavaScript
10
star
39

YT_Django_Project_Ecommerce_v1_Part1

Python
10
star
40

YT_Django_Admin_csv_Button_Upload

Python
10
star
41

YT-React-Django-Chatroom-Part-3-Django-Backend

Python
10
star
42

YT-Django-Docker-Deploy-Heroku-Container

Python
10
star
43

YT_Faker_Intro

Python
10
star
44

YT_NextJS_DRF_Ecommerce_2021_Part2_Sessions_HttpOnly

JavaScript
9
star
45

YT-Django-Simple-Blog-App-Part5-Comments-MPTT

Python
9
star
46

YT-Django-Celery-Series-email-example

Python
9
star
47

YT_NextJS_GraphQL_Django_Ecommerce_2021_Part1

Python
9
star
48

YT-GraphQL-Django-Queries-Introduction

Python
9
star
49

YT_Django_async_views_ex1

Python
8
star
50

YT-Django-GitHub-Actions-Testing

Python
8
star
51

YT-React-Django-Chatroom-Part-3-React-Backend

JavaScript
8
star
52

YT_Django_Internationalization_Part_1

Python
8
star
53

YT-Django-Testing-Series-Introduction-models

HTML
8
star
54

YT-Django-DRF-Simple-Blog-Series-Permissions-Part-2

HTML
8
star
55

YT_Django_Project_Ecommerce_Part_6_Final

Python
8
star
56

Python-Beginner-PY001

8
star
57

yt-django-4-baseline-multiple-image-form

Python
7
star
58

YT-Django-Celery-Series-Intro-Install-Run-Task

Python
7
star
59

YT-Django-DRF-Simple-Blog-Series-Filters-Basic-Search-Part-6

HTML
7
star
60

YT-Django-Heroku-Deploy-Channels-Daphne

Python
7
star
61

YT-Django-Simple-Blog-App-Part8-User-Authentication-System

HTML
6
star
62

YT_Django_Project_Ecommerce_Part_8_PayPal

Python
6
star
63

YT-Django-Media-Static-AWS-S3

Python
6
star
64

YT-Django-Docker-Compose-PostgreSQL-Volume

Python
6
star
65

YT_Django_Core_Middleware_Intro

Python
6
star
66

YT-XAMPP-SSL-Config

6
star
67

YT_Django_Project_Ecommerce_Part_3_Final_v1

HTML
5
star
68

YT-Django-args-kwargs

HTML
5
star
69

YT_NextJS_GraphQL_Django_Ecommerce_2021_Part2_HttpOnly_Cookie_JWT

JavaScript
5
star
70

YT-Django-Image-API-Service-Project-Introduction-Build

Python
5
star
71

YT_Django_Project_Ecommerce_v1_Part2-Basket-Sessions

Python
5
star
72

YT-Django-Simple-Blog-App-AF4ji8bb1M8

Python
5
star
73

YT-Django-RestAPI-Webpage

Python
5
star
74

yt-django-crontab-database-actions

HTML
5
star
75

YT-Django-DRF-Simple-Blog-Series-Viewset-Routers-Part-4

HTML
5
star
76

YT-Vue-Django-ML-Iris-API

Python
4
star
77

discord-quiz-bot-project

Python
4
star
78

YT_Crash_Course_Django_2021

Python
4
star
79

YT_Docker_Compose_Start_Django_App

Python
4
star
80

Python-Excel

Python Excel
4
star
81

YT_Django_Multiple_Database_Example1

Python
4
star
82

YT-Django-Simple-Blog-App-Part6-Simple-Search

Python
4
star
83

Python-Challenges

Jupyter Notebook
4
star
84

YT-Django-Admin-Series-SummerNote

JavaScript
3
star
85

YT-django-search-full-text-search-introduction

Python
3
star
86

YT-Django-Simple-Blog-App-Part4-FileUploads

Python
3
star
87

YT-Django-DRF-Simple-Blog-Series-Schema-Documentation-Part-5

HTML
3
star
88

YT-Django-User-Auth

Python
3
star
89

YT-FlaskAPI-Vue-ML-Wine-Classification

Jupyter Notebook
3
star
90

YT-Django-Simple-Blog-App-Part15-MPTT-AJAX-Comments

HTML
3
star
91

YT_Django_Project_Ecommerce_Part_7_Wish_List

Python
3
star
92

YT-Django-API-Quiz-React-Frontend-Part2

Python
3
star
93

Python-Intermediate-PY003

3
star
94

YT-Django-ORM-introduction-noORM-raw-sql-part8

Python
3
star
95

YT-Django-Admin-Series-Admin-Template

JavaScript
3
star
96

YT_Docker_Django_Beginners_First_Steps

Python
3
star
97

selenium-mastery-with-django

Python
3
star
98

YT-Django-Simple-Blog-App-Part11-Like-Feature-AJAX

HTML
3
star
99

YT-Django-Simple-Blog-App-Part2-Comments

Python
3
star
100

YT-Django-Simple-Blog-App-Part13-Towards-Adv-Search-with-PostgreSQL

HTML
3
star