The Flask Mega-Tutorial Kickstarter

Posted by
on under

Chances are, you were introduced to my blog through the Flask Mega-Tutorial, which is by far, the most popular topic on this blog. If you are doing the tutorial now, I'm sure you noticed that a number of things aren't quite as easy anymore. This is unfortunate, but several of the areas the tutorial touches on have seen significant changes since I published the articles.

The tutorial is now five years old, and embarking on a rewrite to bring it to Python 3.6 and current versions of all other technologies is going to require a considerable amount of time and effort. So I have decided to try a little experiment with a Kickstarter. If you haven't seen this yet, have a look at this video:

If you have benefited from my blog articles and would like to help me allocate a chunk of time this summer/fall season to dedicate to bring the Mega-Tutorial all the way to 2017 technology, I would really appreciate it if you contribute what you can to this campaign on Kickstarter. Obviously this being a Kickstarter, there are some rewards for those who decide to become backers:

  • I will compile all the articles into a nicely formatted ebook that you can read on your Kindle or other ebook reader.
  • I will record videos in which you can see me going through every single tutorial chapter, while I describe the steps and you watch my screen.

I hope these rewards are interesting enough to motivate you to contribute, but if you need even more motivation, the project was 100% funded on the first day it went live on Kickstarter, and since then I have been fundraising for stretch goals that will allow me to extend the tutorial with a list of new killer topics. The first stretch goal has already been met, this was about adding an API that returns user information and a JavaScript client that uses it. I have announced two more stretch goals, push notifications and Docker support, which are still in the running, with a bit over two weeks remaining on the campaign.

There isn't a lot more to say here that is not said on the Kickstarter project page, so please visit it to learn more about this project, and also spread the word by telling your friends about it!

Flask Mega-Tutorial Kickstarter
Whether you decide to contribute to this campaign or not, I want to express my gratitude for the support you have given me since I started this blog in 2012. Thank you for being a loyal reader!

Become a Patron!

Hello, and thank you for visiting my blog! If you enjoyed this article, please consider supporting my work on this blog on Patreon!

  • #1 Retal said

    I'm new at programming and trying to create application on flask writing python and connect it with json on android studio , Can you tell me from where should i start to understand flask well and as quick as I can ?

  • #2 Miguel Grinberg said

    @Retal: Have you done the tutorial in the Flask documentation? That's a good first tutorial. Then the Mega-Tutorial is a good choice for a bit more interesting and complex project.

  • #3 Fisherworks said

    prepare to donate but found that kickstarter doesn't support paypal... for those ones who don't wanna leave credit card info anywhere... Afterall they got hacked in 2014.

  • #4 Miguel Grinberg said

    @Fisherworks: If you prefer, send the money to my gmail account (first dot last at gmail dot com) via paypal and I'll include you in the rewards along with all the Kickstarter backers. Thanks!

  • #5 Josh Stephens said

    I have been pondering on this method for other authors and I feel like more should do this. Because A. the author gets most of the money directly. Where from book deals, I have been lead to believe authors don't make a whole lot of money from their sales.

    To me when I donated, I felt I was buying a book that you were writing but I got it directly from you and I get updates live when issues are found. Plus you don't have to page stack just to reach a certain count. So you get to say exactly what you want without all the fluff to get in the way.

    I wish you the best of luck and can't wait to see the video's that you record. It will help me to see how others think in the beginning when they are designing for a project. Keep up the great work Miguel. You are a truly awesome writer and champion for flask.

  • #6 Chris Jones said

    Definitely backing this. I tried following the mega-tutorial and too many things were a bit difficult because things were a bit out of date and/or not exactly supported anymore, etc. I'd love to see an updated version.

    Are you doing this in Python 3?

  • #7 Miguel Grinberg said

    @Chris: Thanks! Absolutely, this is going to be a Python 3.6 effort. I will keep compatibility with 2.7 as much as a I can, but 3.6 is going to be king this time around.

  • #8 Nitin George Cherian said

    Hello Miguel, thank you for this course and I have backed it. How should I prepare myself so that I can make best use of your course when it is released? I work on Python, but does not have much experience in Web application development or Web Frameworks.

  • #9 Miguel Grinberg said

    @Nitin: Thanks! You do not have to be familiar with Flask or general web framework concepts. You may benefit knowing a bit of HTML and CSS. If you want to have an idea of how this tutorial will go, check out the old version, which is published here on this blog:

  • #10 jf said

    @MiguelGrinberg: Hey Miguel, I'm not familiar with kickstarter, and I see that 7/27/17 was the cutoff date for the campaign. However, as a python36 user, I would very much like access to your planned ebook & video portions of the new updated Flask tutorial. How might I contribute/pay for access now after-the-fact? Thanks so much,


  • #11 Miguel Grinberg said

    @jf: Hi, and thanks! You are not alone, several people already asked me about how to make a contribution now that the Kickstarter is over. When you go to the Kickstarter page, you will see a "Pre-Order" button. That will take you to a page I set up to pre-order the ebook and/or the video for this tutorial. Let me know if anything on the order page isn't clear.

  • #12 Dmitriy said

    Hi Miguel! Thanks a lot for you tutorial, I guess it's the best source to learn Flask now. I see that you're developing the new version of it, but I can't wait for almost half a year when it will be released. I'm a Frontend developer, I know how the web works and have a really small experience with Backend (I build a simple blog with Django previously). I wanted to ask if it's still normal to read the first version of Mega tutorial now, in 2017, or I should search for another tutorial? Isn't it outdated completely? Thanks in advance!

    P.S. Looking forward to the updated version anyway, I'm quite sure it should be awesome :)

  • #13 Miguel Grinberg said

    @Dmitriy: The current version of the tutorial is still okay to use. Some of the chapters are dated, like for example the use of OpenID for authentication. If you can tolerate that, you should be fine doing the current tutorial, then going over the new one in a few months to learn the new stuff.

  • #14 Xu said

    I'd like to learn, but there's a problem. I can't use U. S. dollars. In China, is there any other way to replace it?

  • #15 Miguel Grinberg said

    @Xu: The articles are going to be published on my blog, so you'll be able to access them for free. If you want the ebook or the videos, I think you can pay with a credit card and the system will convert the US dollars to your currency.

  • #16 Ophelia said

    I'm trying to follow your flask-Mega tutorial and ran into error when pip install sqlalchemy-migrate
    Command "python egg_info" failed with error code 1 in /private/var/folders/1n/zyztjk_528l7gnx4f5drg6qc0000gn/T/pip-build-6ravgiwz/sqlalchemy-migrate/
    I searched stack-overflow with no luck, please advice.

  • #17 Miguel Grinberg said

    @Ophelia: Not sure because sqlalchemy-migrate is an old package that is not very popular anymore. I suggest you try an older version. I'm currently rewriting the tutorial to use Flask-Migrate and Alembic, which are much better supported these days.

  • #18 Paul said

    I don't want to sound desperate and may I say, insolent. But when you do you expect your new Flask tutorial to be released?


  • #19 Miguel Grinberg said

    @Paul: I'm estimating it'll be published in December.

  • #20 jialuzhang said

    Hi Miguel! Could you give me a link so I can make sure the money is paid to you? Thanks

  • #21 Miguel Grinberg said

    @jialuzhang: You can use Thanks!

  • #22 kalesis said

    Hi miguel. It is nice to say hello and know that there will be a new version of the flask, I am excited. Greetings from Peru.

  • #23 Anthoni Gardner said

    Hello Miguel,

    Just pre-ordered your Kickstarter (eBook and Videos) and also pre-ordered your new Dead Tree book from Amazon as well :D

    Love your style and because of yourself I got interested in Flask and now I am eager to learn more.

    Looking forward to this :)


  • #24 victor vicllins said

    Hi Miguel,
    Am just new but very passionate about learning to solve web problems, so i was introduced to flask python framework and happen to come across your tutorial which was going very great for untill i got stuck with this same error even though i have to start all over but the error occured again. When i do 'flask run' in the terminal i get this. File "/home/vicllins/Desktop/myweb/team/app/", line 37, in create_app
    from .auth import auth as auth_blueprint . ImportError: cannot import name 'auth'. Please no one around could help ma, i really need asistance. Thanks.

  • #25 Miguel Grinberg said

    @victor: Do you have a blueprint or package called auth in your project? If you are following my code, you may want to compare your code against mine on GitHub to see if you can find the problem.

Leave a Comment