Django + AngularJS for a Powerful Web Application

Learn how to integrate a Django backend with an AngularJS front-end in this step-by-step series.
4.4 (36 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
4,181 students enrolled
Take This Course
  • Lectures 36
  • Length 5.5 hours
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 10/2016 English

Course Description

When it comes to building modern web applications, you need to think about two aspects: the backend and the front end. 

Django is one of the most popular backend frameworks in the world.

AngularJS is one of the most popular front-end frameworks in the world.

Together, they make magic. This series is about integrating that magic to show you what's possible in today's cutting edge technology. 

We're going to be working with you step-by-step and teaching you everything along the way. By the end, you'll have a powerful Blog web application driven by the beautiful combination of Django and AngularJS. 

What are the requirements?

  • Try Django 1.9 (our course; see Requirements video)
  • Advancing the Blog (optional; see Requirements video)
  • Blog API with Django Rest Framework (our course; see Requirements video)
  • Try AngularJS 1.5 (our course; see Requirements video)

What am I going to get from this course?

  • Integrate Django Applications with AngularJS
  • Django 1.10
  • AngularJS 1.5

Who is the target audience?

  • Meeting the requirements for the course is HIGHly recommended
  • Django users looking to integrate AngularJS
  • AngularJS users looking to integrate Django
  • Intermediate to Advanced Developers

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Welcome

Welcome to Django + AngularJS


This is what we're going to build in this course.


This course's requirements

Section 2: Downloads & Setup

Download and install the Django project from


Download Try AngularJS 1.5 from

Section 3: Django + AngularJS

Setup a single page app in Django.


Serving Angular Templates via Django.


Static Files in Django + Angular


Serving Angular Templates via Django part 2.


Start the API Integration


Update the Backend API


Use AngularJs to login to the Django Rest Framework


How to use ngCookies ( to store JWT token.


Use Angular's built in $http service ($http) to run HTTP methods to create a comment in the backend.


Update Comment Create API Endpoint in Django.


Update the Comment List API View to be more dynamic. 


Integrating the Angular ngResource with the Django Backend.


Learn about methods in the ngResource to handle various events.


Build the reply to comment form


Simple way to toggle content in AngularJS


Create a custom directive for the Comment Thread.


Complete the custom comment thread directive.


User Interface improvements.


Add a HTTP Interceptor for a ngResource part 1


Add a HTTP Interceptor for a ngResource part 2


Show the server error on the comments form.


Show login form errors and do updates to the comment form.


Dynamically load Templates in AngularJS


Improve overall usability and squash glitches.


Render Markdown in AngularJS


User login API update changes to use the custom Login View Function built in the Blog API project (Django + Django Rest Framework)


Update User Login in AngularJS


Update API Endpoint for Registering users.


Create the register detail component in AngularJS to allow users to register.


Allow users to delete their own comments and final clean up to the project.

Section 4: Thank you!

Thank you so much for watching!

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Justin Mitchel, Coding Entrepreneur & Teacher

It all started with an idea. I wanted freedom... badly. Freedom from work, freedom from boredom, and, most of all, the freedom to choose. This simple idea grew to define me; it made me become an entrepreneur.

As I strived to gain freedom, overtime I realized that with everything that you do you can either (1) convince someone, somehow, to do it with you or (2) figure out how to do it yourself.

Due to a lack of financial resources (and probably the ability to convince people to do high quality work for free), I decided to learn. Then learn some more. Then some more. My path of learning website design started a long time ago. And yes, it was out of need not desire. I believed I needed a website for a company that I started. So I learned how to do it. The company died, my skills lived on... and got better and better.

It took me a while after learning web design (html/css) to actually start learning programming (web application, storing "data", user logins, etc). I tinkered with Wordpress, believing it could be a "user" site, but I was mistaken. Sure there are/were hacks for that, but they were hacks/work-arounds and simply not-what-wordpress-was-indended-to-be. Wordpress is for blogs/content. Plain and simple.

I wanted more. I had a web application idea that I thought would change the way restaurants hire their service staff. I tested it with my basic html/css skills, had great initial results, and found a technical (programmer) cofounder as a result. He was awesome. We were featured on CNN. Things looked great.

Until... cash-flow was a no-flow. Business? I think not. More like an avid hobby. We had the idea for a business just no business. Naturally, my partner had to find a means of income so I was left with the idea on its own.

Remember how I said everything we do has 2 choices. Well I tried the convincing. Now it was time to try the learning. I opted to learn and haven't looked back since. I tried almost every language out there: PHP, Ruby on Rails, SQL, Objective C, C++, Java, Javascript. I was lost.

Then, I tried Python. I was hooked. It was so easy. So simple. So elegant.

Then, I tried Django. Even more hooked. Made from python & made for web applications. It powers Instagram & Pinterest (two of the hottest web apps right now?).

Then, I tried Bootstrap. Simple and easy front-end design (html & css) that is super easy to use, mobile-ready, and overall... incredible.

Python, Django, and Bootstrap are truly changing the way the world builds web applications. I believe it's because of the simplicity to learn, the sheer power behind them, and, most of all, the plethora of resources to aid anyone in building their web projects (from packages to tutorials to q&a sites).

I relaunched my original venture with my new found skills. That wasn't enough. It didn't compel me as it once had. I started imagining all the possibilities of all the ideas I've always wanted to implement. Now I could. Which one to start with? There were so many good ideas...

Then another idea, a new & fresh idea, started brewing. I started to believe in the power of learning these skills. What would it mean if other non-technical entrepreneurs could learn? What would it mean if ideas were executed quickly, revenue models proven, all prior to approaching the highly sought-after programmers? What would it mean if entrepreneurs became coders?

And so. Coding for Entrepreneurs was born.

Here are some bio highlights:

  • Adjunct Professor of Entrepreneurship at the Lloyd Greif Center for Entrepreneurial Studies in the Marshall School of Business at the University of Southern California
  • Bestselling instructor on Udemy
  • Funded creator on Kickstarter
  • Founder of Coding For Entrepreneurs
  • Cohost of Backer Radio

Ready to start learning?
Take This Course