This chapter welcomes you with an overview of what you'll build and how the book will work. It sets you up for success by teaching you everything you need to run the sample app.
Get your data layer under control with the Repository pattern. Learn how to properly handle exceptions, write clean mappers, support caching, pagination, different fetch policies and more.
This is your first step to becoming a BLoC wizard. Understand what state management is all about and why Blocs and Cubits are the best tools for the job.
Master Cubits before moving on to actual Blocs in the next chapter. Learn how to combine the bloc library with Formz to achieve first-class form validation in Flutter.
This is your graduation to state management. Learn how Blocs are different from Cubits, the reasons you'd pick one over another, and how to use Blocs to face complex challenges, such as pagination, search bars, filters and more.
Learn what user authentication is, how it works and how to best architect your application to support it.
Learn everything you need to know about Navigator 2, how to set up a robust routing strategy, and how to connect your features in a decoupled way.
Put your routing mechanism to the ultimate test by adding deep link support with the help of Firebase Dynamic Links.
Learn how to make your app accessible to other languages.
Learn how to use theming with dark mode in Flutter apps. Implement the light and dark themes in WonderWords by diving deep into InheritedWidget.
Learn about the need for a component library and storybook. Add platform-specific files to a package, make it runnable as a standalone app and use it to showcase widgets in that package. Also learn how to customize a storybook.
Learn about monitoring app lifecycle with the help of Firebase Analytics and Firebase Crashlytics.
Learn to test different app features and variations with Firebase Remote Config and Firebase A/B Testing tools.
In this chapter, you'll learn about automated testing. You'll cover theory on the importance of automated testing, best practices and different test types, as well as see multiple examples.
This chapter covers automated test execution, project builds for Android, and distribution of the builds to Firebase App Distribution.