Build a Backend REST API with Python & Django – Beginner

Build a Backend REST API with Python & Django – Beginner
Build a Backend REST API with Python & Django – Beginner
English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 5 Hours | 4.77 GB

Finally create that App + fully-functioning user database in this crash course to building a REST API

Welcome to the beginner course on How to Build a REST API from scratch, using Django, Django REST Framework, Python, Vagrant, VirtualBox, Atom, and ModHeaders. You’ll also learn how to deploy your dev server to AWS!

This course is made with Django 2.2 and Django REST Framework 3.9.

The skills taught in this course are absolutely essential for creating successful products that users love and can’t live without.

Facebook, Instagram, Snapchat, you name it. These apps all have their own backend REST APIs that handle millions of call requests everyday. You cannot build a successful app without a backend REST API.

Not only is it essential to whatever app or MVP you are building — the skills you learn in this course will make you a kickass developer in the workplace.

If you’re a front-end developer and you take this course, you’ll be able to “speak backend” with your colleagues and understand what’s going on “under the hood” of all your projects, increasing your confidence and earning the respect of your peers.

If you’re a newbie developer or just starting out in your career, this course will give you a very practical foundation to building your portfolio and increasing your earning potential.

In this course you will learn the best-practice way of building your very own REST API.

You will learn how to create a local development server and test your code each step of the way.

Whether you’re looking to gain a bit of experience with backend development, or you’re looking to create a REST API to turn your app idea into a reality – then this course is for you.

By the end of this course you will have built a fully functioning REST API that can handle:

  • Creating and updating user profiles.
  • Login and authentication.
  • Posting status updates.
  • Viewing status update feeds.

You’ll also have a solid foundation to understanding one of the most complex components in software development.

What you’ll learn

  • How to create the most important part of any user application
  • How to confidently use some of the most in-demand full stack technologies today
  • How to create a local development server from scratch
  • How to create a brand new Django project with sqlite database
  • How to build your own browsable, self documenting REST API
  • Handle user registration, login, and status updates in your app with your very own REST API
Table of Contents

Course introduction
1 Course structure
2 Technologies
3 Vagrant vs. Docker
4 How to get the most out of this course
5 How to get help

Setting up your development environment
6 Windows Installing Git, VirtualBox, Vagrant, Atom and ModHeader
7 macOS Installing Git, VirtualBox, Vagrant, Atom and ModHeader

Setting up your project
8 Creating a workspace
9 Creating a Git project
10 Pushing to GitHub

Creating a development server
11 Creating a Vagrantfile
12 Configuring our Vagrant box
13 Running and connecting to our dev server
14 Running a Hello World script

Creating a Django app
15 Create Python Virtual Environment
16 Install required Python packages
17 Create a new Django project & app
18 Enable our app in the Django settings file
19 Test and commit our changes

Setup the Database
20 What are Django Models
21 Create our user database model
22 Add a user model manager
23 Set our custom user model
24 Create migrations and sync DB

Setup Django Admin
25 Creating a superuser
26 Enable Django Admin
27 Test Django Admin

Introduction to API Views
28 What is an APIView
29 Create first APIView
30 Configure view URL
31 Testing our API View
32 Create a Serializer
33 Add POST method to APIView
34 Test POST Function
35 Add PUT, PATCH and DELETE methods
36 Test the PUT, PATCH and DELETE methods

Introduction to Viewsets
37 What is a Viewset
38 Create a simple Viewset
39 Add URL Router
40 Testing our Viewset
41 Add create, retrieve, update, partial update and destroy functions
42 Test Viewset

Create Profiles API
43 Plan our Profiles API
44 Test searching profiles
45 Create user profile serializer
46 Create profiles ViewSet
47 Register profile Viewset with the URL router
48 Test creating a profile
49 Create permission class
50 Add authentication and permissions to Viewset
51 Test new permissions
52 Add search profiles feature

Create login API
53 Create login API viewset
54 Test login API
55 Set token header using ModHeader extension

Create profile feed API
56 Plan profile feed API
57 Restrict viewing status updates to logged in users only
58 Test new private feed
59 Add new model Item
60 Create and run model migration
61 Add profile feed model to admin
62 Create profile feed item serializer
63 Create ViewSet for our profile feed item
64 Test Feed API
65 Add permissions for feed API
66 Test feed API permissions

Deploying our API to a server on AWS
67 Introduction to deploying our app to AWS
68 Add key pair to AWS
69 Create EC2 server instance
70 Add deployment script and configs to our project
71 Deploy to server
72 Update allowed hosts and deploy changes

Summary
73 Course outro