Course Cover Art
  • Build (and deploy) a real SaaS app in 8 weeks using Python and Flask with this self-paced, online course.

    How The Course Works

    Fullstack Flask is a self-paced, 8-week, online course where you will build a real-world SaaS application in Python


    Take the course anywhere


    Take the course anytime


    Learn in a cohesive fashion


    Learn with other students

    Everything you need to build a real SaaS application

    Fullstack Flask goes beyond other courses in covering every detail required for a production application.

    Here are ten things you will be able to do when you take the course:

    1. Build the backend and frontend in Python with Flask
    2. Persist data with PostgreSQL
    3. 100% Test Coverage
    4. Handle real payments with Stripe.
    5. Setup and run delayed jobs queues
    6. Send emails to your users
    7. Build user authentication
    8. Learn how to deploy the entire architecture to production
    9. Tune the performance of the server and queries
    10. Build the foundation for your income-generating SaaS side-project or company

    Our students work at

    👋 Hey there! I'm Sumukh, the author of this course

    I work at AngelList and previously helped teach Python and Flask at U.C. Berkeley to thousands of students. I've helped a lot of people learn Flask but along the way I noticed a problem with the tutorials and books that people were using.

    The problem was that tutorials would skip the actual problems you would encounter as a full-stack developer trying to deploy a maintainable and scalable application in production.

    To solve this this problem, I decided to create this course: A guide that doesn't just cover the basics, but one that teaches how to solve all of the problems you will run into when developing a web application using Flask.

    It's the guide I wish I had when I was getting started, and I think you're going to love it.

    What We Will Build

    In Fullstack Flask I will teach you how to use the full power and expressiveness of Python to build a fully functional income-generating web app from scratch using Flask.

    Introducing Yumroad

    In this course, we'll build Yumroad: a service for selling digital products online

    Real-world architecture

    We're not going to build a simple web-server and be done with it - no way. Instead, we're going to build out the full architecture of a real-world app. That means, databases, delayed jobs, sending emails, monitoring performance, and a whole lot more.

    Payment Forms and Webhooks

    We'll implement custom payment forms -- and implement the server hooks to make them work

    Stripe Integration

    We'll integrate with Stripe to handle payments for our digital products

    Send emails

    Our applications often have to email users and in this course, we'll show you how to do it

    Work with APIs

    We'll work with third party APIs to get real world data and bring it into our application.

    Fullstack Flask vs. Other Courses

    Fullstack Flask can help you save time, money, and frustration vs. going with other courses.

    Fullstack Flask

    Other Courses

    Expert Instructors

    Sumukh works at AngelList building production applications - he also taught Python at U.C. Berkeley. (and newline has tens of thousands of happy students)Who knows. Often unreliable, inexperienced teachers

    Comprehensive Scope

    This course goes beyond the frontend and teaches error handling, performance, sending emails, delayed jobs, and debugging.Teaches on backend and frontend at a superficial level


    Covers all of the details including structure, organization, tooling, and deployment.Leaves you wanting more, wondering how to build a "real" application.


    Support from classmates and teachers in our Discord communityOn your own

    Time Commitment

    Build a complete revenue generating app in 8 weeksWithout a linear path you can waste months and get nowhere

    Satisfaction guaranteed

    Satisfaction guaranteed - full refund if you're unhappyStingy refund policies, if any
    Tinyhouse Promotional Banner

    Why this course is different?
    Production Ready Features

    Fullstack Flask covers the code for the backend and the frontend, but goes way beyond into production-level details that are often ignored by other courses. Here's a few examples:

    Error Handling

    Errors happen, but they don't have to take down your app (or go unnoticed!) . In this course, we'll show you what the pros do: handle their errors using an error handling service like Sentry

    Delayed Job Queues

    You don't want to handle long-running requests in your main web server. Instead, pros setup "delayed jobs", which are worker processes that can perform long-running tasks in your app. We cover how to set these up (and deploy them!) in the course


    It would be great if our code ran perfectly the first time, but sometimes we need to debug. In the course, we'll show you how to use the debugger in Python - in your browser!

    100% Test Coverage

    Tests are a must in any pro application. The app in Fullstack Flask has 100% test coverage and we show you how to write the tests

    Use the SQLAlchemy ORM

    SQLAlchemy is an ORM what is super powerful. In the course we'll show you how to use this ORM - and it's related devtools

    Deploy the whole thing

    The app has an architecture that is more than just a web-server. With a database and delayed jobs, there are several moving pieces - and we show you how to deploy them all in this course

    Includes: Ignite A Batteries-Included SaaS App in a Box

    Included in your enrollment is the code, lessons, and a license to Ignite which is a SaaS App in a Box that you can use for your own projects. ($200 value)

    Ignite is a scaffold for starting new Flask applications. It takes care of the boilerplate code (like User Registration, OAuth, Teams, and Billing), allowing you to focus on building your application. Ignite is built upon best practices for modern Flask applications.

    Batteries Included

    Authentication? Check. OAuth? Check. Teams? Check. Plus, an API, Emails, Admin, Recurring Billing and more.


    Includes an admin dashboard for controlling data and reporting sales

    Team Management

    Manage teams, invites, and roles


    Handle real payments with Stripe - including recurring billing for subscription services

    Social Auth

    Login and register with Google, Twitter, Facebook, and more

    GDPR Compliance

    Allow users to export their data for GDPR

    With Ignite you'll be able to spin up a production, revenue generating SaaS in no time.

    (Included in your Fullstack Flask course enrollment)

    Course Content


    Flexible plans designed for everyone


    Error: Can't find product fullstack-flask-pro. Please contact [email protected]


    • Immediate access to the 40+ course lessons
    • Access to our Community
    • Full Completed Code for the Course
    • License to Ignite: SaaS Boilerplate ($200 value)
    • newline satisfaction guarantee


    Error: Can't find product fullstack-flask-pro-seats. Please contact [email protected]

    Everything in the Pro plan and...

    • Bulk discounts for teams of 10+ students
    • Administrative seat configuration

    Questions you might have

    Here are answers to some common questions

    Yes! Flask comes with the basic components to run a web server. Later you can import other libraries and everything you need to scale your web application to where you want to. It's easier to start with Flask because it doesn't throw at you all the components. It's just throwing you a minimal set of things, one at a time.

    The Python Developer's Survey of 2019 ran by the Python Software Foundation showed that Flask is the most popular Web Framework used by Python developers. - Yes! Flask comes with the basic components to run a web server. Later you can import other libraries and everything you need to scale your web application to where you want to. It's easier to start with Flask because it doesn't throw at you all the components. It's just throwing you a minimal set of things, one at a time.

    The sample project we will be developing throughout the course will be an online marketplace like Gumroad. Inside of the marketplace you will be able to create stores, integrate payment processors like Stripe, and much more.

    The entire application you will build throughout the course has 100% code test coverage. What that means is that the test hit every line of code, making sure it works properly.

    When joining the course, you'll be invited to our community Discord where you can chat with fellow students.

    You'll log in to your newline account and progress through the lessons. You'll also be able to download the completed application and videos.

    I teach the concepts of the course in a very simple way, so anyone with a basic understanding of Python can follow along.

    If you're unhappy with the course for any reason, just reach out to us and we'll give you a full refund. No risk involved.

    Tinyhouse Promotional Banner