No Shortcuts Guide To Django Restapi’S And Next.Js 14/React
Published 5/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 9.74 GB | Duration: 14h 30m
Published 5/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 9.74 GB | Duration: 14h 30m
Join me, as I build an MVP solution to address real world issues I faced while living in an apartment complex.
What you'll learn
How to work with Docker containers with Django and Django REST Framework
How to work with Docker containers with React and NextJS 14
How to use Redux and Redux Toolkit with TypeScript.
Reverse proxies with NGINX to serve both the backend API and the React/NextJS Client
Requirements
Python developers with at least 1 year of web development experience.
Interested in Integrating React and Nextjs 14 with your backend API Endpoint using NGINX
Python3 basics and type hints
Django basics
REST API and Django REST framework fundamentals
JavaScript basics (including variables, operators, functions, arrays, array methods, async/await, and ES6 features)
TypeScript basics
React basics (components, props, state, JSX, conditional rendering, mapping over lists, and hooks like useState and useEffect).
Redux and ReduxToolkit basics
Docker and container basics
Shell scripting basics
Web Servers and Basics of NGINX
Description
I previously lived in a large apartment complex with over 500 apartment units, all owned by a single landlord.The complex was plagued by inefficient service delivery, issue reporting, and maintenance operations.Tenants were expected to report problems via a shared WhatsApp account, which often resulted in messages going unread, being read too late, or being forgotten due to the high volume of incoming messages.The landlord’s technicians(who included plumbers,carpenters, masons, electricians, roofers et-cetera) who were responsible for addressing various issues, frequently ignored calls for assistance or provided false excuses about their availability. Tracking the technicians' whereabouts and providing feedback to the landlord on their work was a challenging task.To make matters worse, some tenants used the same WhatsApp account to advertise their goods that they were selling(such as food, clothes et-cetera), causing further confusion and hindering the issue reporting process.Reporting misbehaving neighbors who violated the tenancy agreement and were a nuisance to other neighbors, also proved to be difficult.I finally had enough and moved out of that place… which kept me wondering…if I was fortunate enough to somehow get money in the future and was able to build my own set of apartments, just like my former landlord did, what would I do differently?Welcome…. Join me in this course as I build an MVP(which is a minimum viable product), to solve some of the problems I encountered while I was living in the apartment complex. This solution being an MVP, of course it can be improved or customized to solve your needs.I hope this course will provide valuable insights and solutions to those facing similar challenges in apartment management..
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 Requirements
Lecture 3 Tech tools/Technologies used in Project
Lecture 4 Demo of Final Product
Lecture 5 Course Github Repo, connect with me on Social
Section 2: Project Setup
Lecture 6 Create working Directory & Virtual Environment
Lecture 7 Initialize Git
Lecture 8 Install Packages
Lecture 9 Setup Requirements and Settings
Lecture 10 Configure Other Django Params
Lecture 11 Django Apps
Section 3: Logging In Django
Lecture 12 Introduction to Logging in Django
Lecture 13 Setup Development Logging
Section 4: Configure Django with Docker
Lecture 14 Dockerfile Config
Lecture 15 Entrypoint Shell Script
Lecture 16 Start Shell Script
Lecture 17 Postgres and Docker compose
Lecture 18 Run docker-compose config
Section 5: Using Makefiles
Lecture 19 How to setup Makefiles
Section 6: Custom User model in Django
Lecture 20 Custom User Model Manager
Lecture 21 UUID’s Theory
Lecture 22 Custom User Model
Lecture 23 UserCreationAdmin Form
Lecture 24 Setup Redoc documentation
Section 7: Next Js Introduction
Lecture 25 Initialize Next.js
Lecture 26 Configure Client Git
Lecture 27 Client Dockerfile.
Lecture 28 Add Client Docker Compose
Lecture 29 Theory of NGINX as reverse proxy/load balancer (Don’t skip)
Lecture 30 NGINX Config
Lecture 31 NGINX Docker compose
Section 8: Configure Celery and Redis
Lecture 32 Celery & Redis Intro
Lecture 33 Setup Celery
Lecture 34 Docker-compose config(Celery & Redis)
Lecture 35 Flower and worker start scripts
Section 9: TimeStamped & Profile Models
Lecture 36 TimeStamped Common model
Lecture 37 Cloudinary Configuration
Lecture 38 Signals
Section 10: Authentication,Authorization & JWT
Lecture 39 Token Based Authentication
Lecture 40 Setup Custom JWTAuthentication
Lecture 41 Configure Djoser and RestFramework simplejwt
Lecture 42 Auth Views
Lecture 43 URLS and Test JWT Endpoints
Lecture 44 Setup Google Credentials
Section 11: User - Profile Serializers and Views
Lecture 45 Customize Djoser User Serializer
Lecture 46 Generic JSON Renderer
Lecture 47 Profile Celery tasks
Lecture 48 Profile Serializer
Lecture 49 Profile Views and Urls.
Lecture 50 Profile Urls and Pipeline
Section 12: Apartments Functionality
Lecture 51 Apartment Model
Lecture 52 Apartment Serializer,Views and Urls
Lecture 53 Main Urls and Test Apartment Creation
Section 13: Issue Functionality
Lecture 54 Issue Email Templates
Lecture 55 Issue Model
Lecture 56 Content and Issue Admin
Lecture 57 Email Helper Functions
Lecture 58 Issue Serializer
Lecture 59 Issue Views
Lecture 60 Issues Views and urls
Lecture 61 Test API Routes
Section 14: Report Functionality
Lecture 62 Create the reports app
Lecture 63 Report Email templates
Lecture 64 Report Email Helper Functions
Lecture 65 Report Signals
Lecture 66 Report Serializer And Views
Lecture 67 Report urls and API Routes
Section 15: Rating Functionality
Lecture 68 Rating Model
Lecture 69 Rating View
Lecture 70 Rating Admin
Lecture 71 Create Urls & Test API Routes
Section 16: Posts Functionality
Lecture 72 Post Model
Lecture 73 Custom Permissions
Lecture 74 Post Serializer
Lecture 75 Post Serializers continued….
Lecture 76 Post Views
Lecture 77 Post Views Continued….
Lecture 78 Post urls and Admin
Lecture 79 Test Post API Routes
Section 17: Setup Next.Js
Lecture 80 Configure Eslint,Prettier, Sharp.
Lecture 81 Setup Fonts.
Section 18: Setup Next.js Page(s)
Lecture 82 Intro to File System Based routing
Lecture 83 Placeholder Register,Login, Google pages
Lecture 84 Navbar
Lecture 85 Theme Switcher
Experienced Python web developer with at least 1 year of web development experience