Tweetme | Build a Twitter-like app step by step with Django
4.6 (262 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.
11,013 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Tweetme | Build a Twitter-like app step by step with Django to your Wishlist.

Add to Wishlist

Tweetme | Build a Twitter-like app step by step with Django

Learn Django 1.10, jQuery, and Bootstrap step by step by building a real project that works like Twitter!
4.6 (262 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.
11,013 students enrolled
Created by Justin Mitchel
Last updated 12/2016
English
Curiosity Sale
Current price: $10 Original price: $195 Discount: 95% off
30-Day Money-Back Guarantee
Includes:
  • 10.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Build a real service like Twitter.com
  • A deeper understanding of Django
  • Build projects that rely on an API using the Django Rest Framework
  • Working with AJAX and jQuery
  • Auto-generate hashtags and hashtag filter (#yourtag)
  • Build projects using Django 1.10
  • Integrate Bootstrap (getbootstrap.com) as a front end framework
View Curriculum
Requirements
  • Try Django 1.8 & Up (our courses)
  • 30 Days of Python (not required but highly recommended)
Description

Social media has changed the way we communicate with each other. The power behind social media allows us to do amazing things together. What exactly is behind it? Well.. it's Simple Web Application concepts that can be applied to ALL and ANY web applications that you may build.

In this course we're going to teach you what's behind how Twitter works. Now, Twitter has hundreds of developers so what we're actually building is the basis of what Twitter once was, the absolute most simple things by learning more Django along the way. 

What are we going to learn:

  • Ajax + jQuery to "Tweet" messages
  • Tag users directly (@user)
  • Use Hashtags (#newtag)
  • Integrate Bootstrap
  • Using an Ajax form within a Bootstrap Modal
  • Django Rest Framework
  • Follow users (via Ajax)
  • Like posts (via Ajax)
  • Retweet posts (via Ajax)
  • Class Based Views
  • Custom Template Tags
  • Counting characters in a form
  • Basic Registration
  • And much more!

We do everything step-by-step so even if you're an absolute beginner, you can follow along. Cheers!

Who is the target audience?
  • Entrepreneurs
  • Python programmers (new ones included)
  • Django developers
  • Anyone looking to build a real project
  • Motivated would-be developers
Students Who Viewed This Course Also Viewed
Curriculum For This Course
77 Lectures
10:32:09
+
Introduction & Get Started
4 Lectures 18:25

Welcome to tweetme!

Preview 03:55

A preview of what we're going to build.

Preview 05:01

Requirements of the project.

Preview 04:02

How to use github as your course reference.

Using github
05:27
+
Django Starting & Setup
5 Lectures 39:18

Setup a new Django project.

Preview 09:33

Set up settings files for different environments.

Django Settings
06:00

Serve Static Files in Django 

Django & Serving Static Files
10:06

Start your first view and template.

View Function & templates
05:31

Integrate Bootstrap

Integrate Bootstrap
08:08
+
Tweet App
67 Lectures 09:32:42

Create your first django app to handle tweets.

Build a Tweet App
09:04

How to handle changing fields in models.

Changing Fields in Models
04:52

Associate a user to a Tweet with Foreign Keys

Associating a User to a Tweet with Foreign Keys
03:41

Understand the concept of CRUD

CRUD & Your First Views
09:30

Query the database context

Querying the Database & Context
03:36

Django Template context basics.

Template Context Basics
05:08

Understand the concept behind Class Based Views 

Class Based Views
07:20

Learn how URL routing works.

Dynamic URL Routing
10:10

Learn how Model Form works.

Model Form
06:36

Learn how to do validation within models.

Validation
07:07

Learn how work with Django generic views

Create View
10:59

Using Mixins in Views.

User Needed & Login Required Mixins
07:44

Learn how work with Django generic views

Update View
08:49

Learn how work with Django generic views

Delete View
04:21

Learn how to make urls shorter

Reverse URLs
05:27

Advancing the search feature.

Advanced Searching
06:49

Learn about template inheritance. 

Template inheritance
07:51

Integrate bootstrap media objects.

Bootstrap Media Object for List View
07:32

Create a bootstrap Navbar.

Bootstrap Navbar
06:32

Use bootstrap containers to create columns.

Bootstrap Containers & Columns
11:29

Do tweets from your homepage

Tweet from Hompage
12:51

Integrate Django Crispy Forms

Django Crispy Forms
03:30

Create Django Tests to ensure content works.

Django Tests
07:38

Build your internal API with Django Rest Framework

API with Django Rest Framework
06:00

Create your API Serializer VIew

API Serializer & View
07:17

Add a User Serializer

User Display Serializer
06:20

Add in your Ajax List View

Ajax List View
15:03

Create jQuery Search

jQuery Search
07:00

jQuery & Forms

jQuery the Form
07:02

Using Ajax and Django Rest Framework

Ajax & Create API View
04:33

Create a date display!

Date Display
08:26

Attach tweets and clear out the form.

Attach Tweet & Empty Form
06:23

Counting characters in the tweet form.

Counting Characters
10:02

Automatically do a search in your navbar.

Auto Search
08:58

Doing pagination and ajax to load more posts dynamically.

Pagination & Ajax Load More
09:59

Create a user detail view.

User Detail View
11:13

Build your profile URL and create an API update.

Profile URL and API Update
03:55

Display User Profile Followers

User Profile & Followers
10:15

Create model managers for following toggle/users

Model Manager for Following
09:15

Create model managers for following toggle/users

Toggle Follow
08:51

Create model managers for following toggle/users

Model Manager for Follow Toggle
09:01

Build Django signals

Signals
05:16

Test Django signals

Signal Tests
04:20

Display following tweets 

Display Following Tweets
03:30

Parse Hashtags using jQuery

jQuery Hashtag Parsing
07:00

Create an app to monitor hashtags

Hashtags App
10:08

Do retweets!

Retweet Part 1
12:19

Do rewteets!

Retweet Part 2
06:56

Do rewteets!

Retweet Part 3
07:55

Do rewteets!

Retweet Part 4 with jQuery
14:56

Learn some Python regular expressions to parse username and hashtag data from tweet.

Parse Username & Hashtag with Python Regex
10:42

Create a custom Django Signal

Custom Django Signal
05:36

Create a way to load tweet list anywhere/everywhere. 

Tweet List Loading Everywhere
09:27

Create a User Tweets API Endpoint. 

User Tweets API Endpoint
08:25

Create a like button for tweets.

Like Tweet
09:57

Display Likes & Verb

Display Likes & Verb
05:54

jQuery attach a Tweet & Refactor

jQuery Attach Tweet Refactor
09:20

Display Reply Tweets & Fix Likes

Display Reply Tweet & Fix Likes
09:23

Create a form in Bootstrap Modal

A Form in a Bootstrap Modal
16:35

Create the reply

Do the Reply
11:37

Add a single detail view

Single Detail Tweet
09:41

Update single detail view reply

Single Detail View Replies
15:30

Search tweets and users

Search Tweets & Users
14:02

Create a view for all hashtags. 

Hashtag Tweet List
08:02

Recommend Users and learn about custom template tags.

Recommended Users & Custom Template Tags
14:17

Do your registration and auth.

Registration & Auth
17:58

Final project clean up!

Clean Up Project
05:47
+
Thank you & Next Steps
1 Lecture 01:44

Thank you and next steps!

Thank you & next steps
01:44
About the Instructor
Justin Mitchel
4.4 Average rating
5,058 Reviews
268,071 Students
21 Courses
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