Yumroad To Ignite
Get the project source code below, and follow along with the lesson material.
Download Project Source CodeTo set up the project on your local machine, please follow the directions provided in the README.md
file. If you run into any issues with running the project source code, then feel free to reach out to the author in the course's Discord channel.
Yumroad to Ignite
Yumroad served as a useful tool to help us learn the basics of building larger SaaS applications in Flask. There are a lot of other features involved in building SaaS applications, but by this part in the course you have all the tools you need to understand how they work. Instead of going through each individual feature one by one, we have provided you with a boilerplate project called Ignite which uses the same application structure as Yumroad, but takes care of some of the implmentation details of taking Yumroad and making it production ready.
Lesson Transcript
[00:02 - 00:16] Okay, so now we've built YumRoad, and we've learned a lot along the way. But in our scope of trying to learn how to build SAS applications, there's a lot of other nuances that come into play when you're trying to build a full feature of SAS application.
[00:17 - 00:27] For example, we built user login into YumRoading, but we don't have a way to reset passwords. But that's a common feature that you might need to build.
[00:28 - 00:57] Instead of going into a precise detail of every single additional library, what we've done is we've given you a boilerplate code in the form of Flask Ign ite. And so Flask Ignite will solve many of the common problems you'll address, whether that be user registration, user sign up, user confirmation emails, password resets, OAuth logins to login with Google or Facebook or Twitter, and a bunch of other features which we'll detail in a moment.
[00:58 - 01:09] One common request for SAS applications is the ability to support teams or groups where you invite multiple people into a dashboard. Flask Ignite solves that for you out of the box.
[01:10 - 01:19] In addition, it also provides an API and the ability to generate API tokens for users. So you can quickly hop into the API and build your own extensions.
[01:20 - 01:30] Now, this API uses a different library called Flask Wrestling that we haven't seen so far. But once you take a look at the starter code, you should be able to work with it.
[01:31 - 01:36] In addition, we'll also provide an admin dashboard here. So an admin dashboard is really useful if you ever end up needing to change data.
[01:37 - 01:49] The other large change we've made here is that we also support recurring billing within Ignite. And recurring billing uses many of the same things that we've used already in Y umRoading.
[01:50 - 02:06] So essentially what we've done is we've just extended our Stripe integration a little bit by adding a few more methods. We've also enhanced our webbooks in order to be able to support listening for subscription related events like a user canceling their plan or upgrading their plan.
[02:07 - 02:23] Thanks to our integration in Ignite with the Stripe customer portal, we're actually able to allow users to cancel or update their payment methods as well. So we really solved everything we need to build a SAS application within Ignite .
[02:24 - 02:30] So the next few videos will go over the features of Ignite and give you a demo on how to get started with them.
This lesson preview is part of the Fullstack Flask: Build a Complete SaaS App with Flask course and can be unlocked immediately with a \newline Pro subscription or a single-time purchase. Already have access to this course? Log in here.
Get unlimited access to Fullstack Flask: Build a Complete SaaS App with Flask, plus 70+ \newline books, guides and courses with the \newline Pro subscription.
![Thumbnail for the \newline course Fullstack Flask: Build a Complete SaaS App with Flask](/_next/image?url=https%3A%2F%2Fs3.amazonaws.com%2Fassets.fullstack.io%2Fn%2F20220505142827100_B3A2CA38-292C-4BF8-BDFA-A3B0BAB2107A.png&w=3840&q=75)