Homebaked Raspberry Pi Django

Build a Home / Local Networked Server with a Django-powered Web application to create a local-network-only app.

Last updated 2022-01-10 | 3.7

- Local Networked Server using Raspberry Pi 3 Model B
- Django-powered web application
- Setup Apache2 on a Linux system (useful for other Linux systems)

What you'll learn

Local Networked Server using Raspberry Pi 3 Model B
Django-powered web application
Setup Apache2 on a Linux system (useful for other Linux systems)
Create a Home Automation Hub with a Raspberry Pi and Python
Install an OS on a Raspberry Pi (OS: Raspbian Jessie; a Linux Debian distro for Pi)

* Requirements

* Basic Python
* Basic Django (see first Django Video)
* Need access to a Home/Local Network (firewalls could cause issues)
* Recommended Equipment (see video)

Description

We're on the cusp of controlling every item within our house using code, the internet, and a small computer. Microcontrollers are inexpensive computers (like $35 inexpensive) that can be hacked on to create your very own web application for your local network. 

This is huge. Let's not understate this in any measure. You, yes you, can write some basic code and control every electronic piece in your house? That's pretty awesome.

Now, we're still a little ways away before every electronic item is connected to the Internet but once it is, you'll be able to use what you learned here to control these items at will. 

The technology we use is:

  • Raspberry Pi 3 Model B 
  • Django 1.10
  • Python 3
  • Apache2 & mod_wsgi (for the Web Server)

What we do in this course can likely be used with different versions of Django and to any new versions of Raspberry Pi that may come out so keep that in mind too.

Let's do this!

Who this course is for:

  • Anyone interested in Home Automation + Internet of Things (iot)
  • Entrepreneurs
  • Python/Django Users
  • Beginners to Advanced Technical Users (we do it all step-by-step)

Course content

7 sections • 36 lectures

Welcome Preview 02:14

Welcome to the course!

Equipment Preview 06:23

The required equipment for getting started in this course. Parts list: http://kirr.co/ap90q6

Django Intro Preview 05:56

What we're going to do with Django in this course!

Using Github Preview 03:24

Usage guide: http://www.kirr.co/jao67o/

Download Software Preview 03:02

Download needed software (reference guide: http://kirr.co/jao67o/)

Install Software Preview 02:35

Install software : (reference guide: http://kirr.co/jao67o/)

Flash SD Card & Install Raspbian Jessie Linux Preview 04:08

Install your OS on your microSD card.

Get Raspberry Pi's IP Address Preview 05:05

Bootup, Internet Connection, and get your Pi's IP Address.

SSH Into Pi Preview 03:51

Use a secure shell (SSH) on your non-pi computer to connect via network.

PI Updates, Upgrades, & Install Django Preview 05:46

Do all needed updates and installation to your pi's OS.

Setup Apache2 & Django Part 1 Preview 13:23

Setup an Apache web server for Django part 1

Setup Apache2 & Django Part 2 Preview 03:59

Setup an Apache web server for Django part 2

FTP with Cyberduck and Transmit Preview 09:10

FTP into your PI from your non-pi computer to exchange files for long-term production.

Setup Django Project Preview 05:12

Create a new Django project for the Django Pi Time project.

Startapp Timeclock Preview 07:38

Create the Timeclock app

Serving Static Files Preview 07:52

Setup static files to be served within your local testing environment.

User Activity in Admin Preview 06:45

Testing the UserActivity Model in the Django Admin

Validation for Correct Activity on Model Preview 08:30

Validation for Correct Activity on the Model

View for User Activity Preview 06:38

Create a view for displaying individual user activity.

Model Manager for Toggling Activity Preview 11:00

Create a model manager for toggling user's activity.

Activity View for Toggle & Current Preview 09:48

Create an activity view for toggling user's current activity.

Login Form Preview 08:16

Create a login form for authentication with your user.

Authenticate & Login Preview 09:28

Do authentication and log the user in to a new session.

Verify User Password to Check In Preview 10:11

Create a way to verify the user's password prior to checking in or checking out.

Time Based Action Validation Preview 10:14

Update action validation based on the time and time difference.

Users Activity Part 1 Preview 15:38

View all users' activity part 1

Users Activity Part 2 Preview 13:49

View all users' activity part 2

Users Activity Part 3 Preview 06:32

View all users' activity part 3

Decorators for Login & Staff Required Preview 06:53

Learn about Decorators to handling Login Required on views.

Integrate Bootstrap Preview 09:08

Integrate getbootstrap.com to have a better styled app.

Django Project Complete Preview 01:13

Wrap up for the Django Project.

Download & FTP New Django Project to Pi Preview 14:36

Download and FTP New Django project to work on Raspberry PI

Update Permissions for Database on Pi Preview 04:14

Update Permissions for accessing database (and saving items) from the Raspberry Pi.

Running tests on Devices in Real Time Preview 04:02

Doing tests on our Django project and our Raspberry Pi Network Server

GPIO & Django Preview 05:10

GPIO Packages and Django

Thank you and next steps Preview 01:15

Thank you for watching!