A realistic, professional, full stack Flutter course where we build a production-ready Flutter app.
Learn simple, professional code architecture from a seasoned Flutter engineer.
"Nick is adept at distilling advanced concepts into easy-to-understand analogies. I would recommend his courses to developers at any level. He has also been a passionate mentor, and a prolific contributor to the global freeCodeCamp.org developer community. I am optimistic that his teaching will help you focus on expanding your real-world skills.", Quincy Larson, Founder of freeCodeCamp.org
"Nick has been an inspiration and an amazing teacher. Being one of the first tutors in the Flutter space says a lot regarding his experience. I always recommend Nick's tutorials/courses as it always delivers on the promise!", Robert Brunhage, Founder of robertbrunhage.com
"This course is well prepared and most importantly everything is easy to understand. The course shows the problems that you will face every day as a developer. I highly recommend it to everyone!", Kamil Pyrkosz, Advanced Flutter Student, github.com/tananga
Walk through a basic, scalable Flutter app structure. Common convention for handling pre/post login transitions and state. Understanding image sizing requirements. Per-environment app configuration management.
How 3rd party authentication works. How to cleanly handle pre/post login navigation and state. Integrating Supabase in a Flutter app.
Defining the Information Architecture of our app. Models, Repositories, Providers. Defining schema and querying data from Supabase. Migrations, test fixtures. Supabase queries. Wiring up data.Testing. Integration tests.
Finalizing our app's core functionality by allowing customization, a menu, log out and more.
If I hear from enough students that they'd be interested in this topic, I'll record some addendum videos!
Follow along 1 hour a day and with some self study, finish in a week.
Nick incorporates 20 years of engineering and mentoring expertise into his course content.
Within this time, 5 years went to iOS development and 4 years (and counting) to Flutter development. Nick has found nothing more fun than turning creative ideas into software.
Nick has served in various technical leadership roles, from Capital One to numerous early stage startups as CTO and co-founder, including the TechStars accelerator and previous to that, Director of Mobile for the Trip Advisor acquired startup, CityMaps.
Most importantly, Nick's content is mission driven as he has a passion for mentoring others and teaching. A few years ago, he recently coached his brother-in-law from zero knowledge of programming to becoming a React developer in just over a year.
Nick continues to write Flutter apps with his wife Irina, who specializes in UX design.
In this course, I've leveraged my 2 decades of programming experience by ensuring code isn't over engineered, over architected but is still scalable and easy to maintain. This is something that is quite difficult to achieve for junior engineers developing their own Flutter courses.
The topic of which packages to use and especially ones for state management is a contentious one. With over 4 years of Flutter experience behind our belts, we will introduce a carefully selected approach for leveraging state management in this course by using the very popular, battle tested Provider package.
This course is for anyone who wants to take their basic experience with Flutter to the next level. Whether you want to start freelancing or working full time, this course will walk you through real the world skills needed to be a competent Flutter developer.
"Flutter familiar" developers who have a basic understanding of Flutter.
"YouTube aficionados" who binge watch Flutter tutorials who now want a structured course.
Web developers who want to break into multi-platform mobile development.
iOS or Android developers who want to expand their skillset and become more marketable.
Basic programming constructs such as classes, methods, variables, etc.
Basic data structures such as strings, ints, arrays etc.
Installng Flutter packages.
Very basic database concepts such as tables, queries, etc.
Do you offer student discounts?
Yes. Email me at firstname.lastname@example.org with proof that you are a student and you will receive a discount.
Does this course cover null safety?
Do I need to be a Dart pro to take this course?
Not at all. You'll simply need some basic familiarity with Flutter and Dart.
Why don't you use <state management package x> instead?
Provider is the simplest and most battle tested, least complicated package out there. Other popular state management packages would be fine as a drop in replacement as long as they are as simple or simpler to use. Our philosphy is to avoid overly complex packages and it has worked well over the past few years developing Flutter apps. We have assessed a number of alternate state management packages and they are either not maintained properly, not mature enough or overly complex and hyped. Provider has proven to be a great middle ground and something that has been around long enough to avoid these concerns.
Can I download the videos if I have a poor internet connection?
Unfortunately, allowing folks to download videos typically has lead to illegal distribution in the past. But with that said, we offer auto-adaptive lower quality bitrate streaming for those without a great connection.