/build-a-saas-app-with-flask

Learn how to build a production ready web app with Flask and Docker.

Primary LanguageHTMLMIT LicenseMIT

Welcome to The Build a SAAS App with Flask Course!

A video course where we build a real world web application with Flask, Celery, Redis, PostgreSQL, Stripe and Docker.

Full details on the course can be found here:
https://buildasaasappwithflask.com

Getting started

cp .env.example .env
cp docker-compose.override.example.yml docker-compose.override.yml
docker-compose up --build

After everything is up and running, visit http://localhost:8000.

How does this source code differ than what's in the course?

In the course we build up a 4,000+ line Flask application in 15 stages while I'm at your side explaining my thought process along the way. You will get to see the source code grow from a single app.py file to a large code base that spans across dozens of files and folders.

This repo includes up to the 6th stage. By this point in the code base, you'll be introduced to concepts such as:

  • Using Docker to "Dockerize" a multi-service Flask app
  • Using Flask extensions
  • Flask blueprints
  • Jinja templates
  • Working with forms
  • Sending e-mails through Celery
  • Testing and analyzing your code base

The rest of the course covers topics such as:

  • A crash course on Docker and Docker Compose (including multi-stage builds)
  • Going over the application's architecture and tech choices
  • Creating a full blown user management system
  • Creating a custom admin dashboard
  • Logging, middleware and error handling
  • Using Click to create custom CLI commands
  • Accepting recurring credit card payments with Stripe
  • Building up a dice game called "Snake Eyes"
  • Responding with JSON from Flask and creating AJAX requests
  • Processing microtransaction payments with Stripe
  • Dealing with database migrations
  • Converting your app to support multiple languages (i18n)
  • A crash course on Webpack, ES6 JavaScript and SCSS

By the time you finish the course, you'll have all the confidence you need to build a large web application with Flask.


There's over 187 video lessons, 25+ hours of content, coding exercises and an e-book that's included. You also get free updates for life as well as life time support. I've added 15+ hours of free updates over the years.

These updates range from adding new features like Webpack to keeping Python, Node and all package / service versions up to date. There's even 1 update that's a 5 hour live recording where I updated a bunch of things at once. This includes using git too (making good commits, interactive rebasing, etc.), live debugging and Googling for errors.

Also as a bonus, there's an additional 18 video lessons and 3 hours of content that covers building a separate RESTful API driven application that uses websockets.

Everything you'd want to know about the course can be found here:
https://buildasaasappwithflask.com