text10 minFREE PREVIEW

Welcome to Flutter in Production!

Course introduction and what you will learn.

Welcome to Flutter in Production! 🎉

Hey, I'm Nabi, your instructor for this course!

I created this course because shipping mobile apps is hard, and there are many things to consider:

  • Preparing for release: app icons, splash screens, flavors, environments, error reporting, analytics, force update, privacy, T&Cs.
  • App Submissions: app store metadata & screenshots, compliance, testing vs distribution tracks, dealing with rejections.
  • Release automation: CI workflows, environment variables, custom build steps, code signing, uploading to the stores.
  • Post-release: error monitoring, bug fixes, addressing user feedback, over-the-air updates, feature toggles & A/B testing.

Course Structure

To help you tackle all these challenges, I've created a comprehensive curriculum that is divided into three parts.

Part 1: Preparing for Release (Modules 2-8)

In this first part, you'll get your app ready for production by tackling:

  • Launcher Icons and Splash Screens
  • Multiple Flavors and Environments
  • Error Monitoring (Sentry)
  • Analytics (Mixpanel and Firebase Analytics)
  • Force Update (Firebase Remote Config)
  • Collecting user feedback and in-app reviews
  • Creating a website for your app

Skipping these steps can be costly. Imagine releasing without error monitoring or analytics—you'd be flying blind. What if there's a critical bug in production? Or if a feature you spent weeks on isn't even being used? This section ensures you're equipped to avoid those headaches.

Part 2: Release Management and Automation (Modules 9-12)

Once your app is ready, it's time to get it into users' hands. This part covers:

  • App Store Release: Prepare, build, upload, and submit your iOS app to App Store Connect
  • Play Store Release: Prepare, build, upload, and submit your Android app to the Google Play Store

Once your first release is out, you'll quickly find that manual releases take a lot of time, so you'll want to automate the whole process:

  • Release Automation with Codemagic (quick setup).
  • Release Automation with GitHub Actions + Fastlane (advanced setup with more control).

Bonus: I'll also walk you through the latest requirements for setting up Apple/Google developer accounts and navigating store policies.

Part 3: Post-Release Techniques (Modules 13-15)

By this stage, you'll be confident about shipping and monitoring your apps in production. Time to streamline your process even further:

  • Code push with Shorebird
  • Automated screenshots generation
  • Feature toggles and A/B Testing

What is not included in this course

There are some topics that, while important for production apps, are not planned for this course:

  • Automated testing
  • Accessibility and localization
  • App security (though I'll show you how to store API keys securely)
  • Building adaptive apps
  • Deep linking and URL-based navigation
  • Publishing Flutter desktop apps
  • App monetization
  • App store optimization (ASO) and keyword research

Where relevant, I'll include links to resources where you can learn more.

How to make the most of this course

The course follows a linear structure, giving you a clear release plan that covers all the important steps.

While I recommend following from beginning to end, each module will be as self-contained as possible, so feel free to jump around if you're looking for something specific.

This course is both a learning path and a reference guide. So, you'll also find:

  • Checklists at the end of each module to ensure you "ticked all the boxes" before moving on.
  • Quizzes to test your knowledge in many of the lessons.

Final Thoughts

I'm excited to help you take your Flutter apps to production! Let's get started!

Courses | codewithnabi | Muhammad Nabi Rahmani