Programming & Web DevelopmentIntermediate

Flutter Mobile App Development

One codebase for iOS and Android with Dart and Flutter.

Taught by Prerana Joshi · Mobile Developer

What you'll learn

  • Set up the Flutter SDK, pass flutter doctor and run an app on an emulator or device
  • Write idiomatic Dart 3 using null safety, named constructors, records and async/await
  • Compose screens from stateless and stateful widgets with layouts that adapt to any screen
  • Manage shared app state with Provider and Riverpod and explain when to choose each
  • Navigate with go_router and load REST API data with clear loading and error states
  • Test, sign and build release versions for Google Play and the Apple App Store

About this course

Flutter lets you ship one Dart codebase to both iOS and Android, and this course takes you from a blank project to an app that is ready for the stores. It is written for developers who know the basics of programming in any language and want to move into cross-platform mobile app development. You will learn the Dart essentials Flutter relies on, compose screens from widgets, build responsive layouts, and manage state cleanly with Provider and Riverpod. You will then add navigation with go_router, fetch JSON from a REST API, write widget tests and prepare signed builds for Google Play and the App Store. By the end you will have built a small habit-tracker app and understand how to structure a larger one. No previous Dart or mobile experience is required.

Course content

7 lessons
  1. 1Why Flutter and Setting Up Your ToolkitHow Flutter draws its own UI, what to install, and how to run your first app on a device.Preview
  2. 2Dart Essentials for Flutter DevelopersThe Dart you use daily: types, null safety, classes, records and asynchronous code.
  3. 3Widgets, the Widget Tree and setStateStateless and stateful widgets, the build method, and how Flutter rebuilds when data changes.
  4. 4Layouts: Rows, Columns, Lists and Responsive ScreensThe constraint model, Row, Column and Expanded, fast lists, and adapting to screen size.
  5. 5State Management with Provider and RiverpodLifting state out of widgets, sharing it with Provider, and testable app state with Riverpod.
  6. 6Navigation and Working with REST APIsRouting with go_router, fetching JSON with the http package, and handling loading and errors.
  7. 7Testing, Building and Publishing Your AppWidget tests, app signing, release builds, and submitting to Google Play and the App Store.