Flutter Coaching 1-on-1

Learn to build mobile apps with Flutter, 1-on-1

Offline 1-on-1 lessons, paced to you. Start by building your own app with AI, or go all the way to setting up a Flutter codebase ready for real projects.

Offline 1-on-1

We sit down and code together. You can ask anything at any point, and I'll go at your pace.

Built around your goal

Whether you want your own app or a Flutter job, the examples and exercises follow what you're aiming for.

You leave with an app

Every package ends with an app you built yourself, running on your own phone.

A shot at a job

After the course, you'll have the chance to work at a digital transformation company.

Packages

Pick the package that fits your goal

Not sure which one? Leave your details and we'll figure it out together.

Flutter with AI

Get the Flutter basics down, then build your own app with AI.

1,599,000₫/ 4 sessions
  • Just enough Dart & Flutter to read code
  • Asking AI for screens and features
  • Reading and fixing the code AI writes
  • Your own app, running on your phone
Register

Flutter Fundamentals

Learn Dart and Flutter properly, from scratch to a finished app.

4,999,000₫/ 12 sessions
  • Dart from basics to async
  • Widgets, layouts, lists, navigation
  • Forms, state, theming, animation
  • Local storage and basic API calls
  • Final project app
Register
Job-ready

Advanced Flutter

Everything in Fundamentals, plus what real projects actually use: Bloc, a three-layer architecture, Dio and REST APIs.

9,999,000₫/ 18 sessions
  • Everything in Flutter Fundamentals
  • Bloc / Cubit state management
  • Three-layer architecture
  • RESTful APIs with Dio
  • Build your own production-ready Flutter base
Register

Prices in VND. Get in touch to set up a schedule and payment.

Roadmap

What you'll learn, session by session

Here's the plan for each package. If you need more time on something, we'll slow down.

  1. Session 1

    Getting started with Flutter

    • Install the Flutter SDK, Android Studio / VS Code, emulators and real devices
    • Project structure, pubspec.yaml, adding and managing packages
    • Hot reload vs hot restart, debug / profile / release modes
    • How Flutter draws the UI: widget, element and render trees
  2. Session 2

    Dart fundamentals

    • Variables, types, final / const, null safety (?, !, late)
    • Functions, optional and named parameters, arrow functions
    • List, Map, Set and map, where, fold
    • Writing clean, readable Dart the way teams expect
  3. Session 3

    Object-oriented & async Dart

    • Classes, constructors, factories, inheritance, abstract classes, interfaces
    • Mixins, extensions, generics
    • Future, async / await, error handling with try / catch
    • Stream, StreamController, and when to use a Future vs a Stream
  4. Session 4

    Core widgets

    • StatelessWidget & StatefulWidget, and when to use each
    • Lifecycle: initState, didUpdateWidget, dispose
    • BuildContext, keys, and why widgets rebuild
    • Splitting widgets and using const to keep the app smooth
  5. Session 5

    Layouts

    • Row, Column, Stack, Expanded, Flexible and how constraints work
    • Reading and fixing overflow errors
    • MediaQuery, LayoutBuilder, responsive layouts for phones and tablets
    • Rebuilding a screen from a Figma design
  6. Session 6

    Lists & scrolling

    • ListView, GridView, builder and separated
    • Pagination and pull to refresh
    • CustomScrollView and slivers (SliverAppBar, SliverList)
    • Keeping long lists smooth
  7. Session 7

    Navigation

    • Navigator push / pop, returning data to the previous screen
    • Named routes and arguments
    • BottomNavigationBar, TabBar, Drawer, keeping state across tabs
    • Organizing routes in a multi-screen app
  8. Session 8

    Forms & input

    • TextField, TextEditingController, FocusNode
    • Form, validation and showing errors
    • Dialog, BottomSheet, SnackBar
    • Keeping fields visible above the keyboard, moving to the next field
  9. Session 9

    Basic state management

    • setState and lifting state up
    • How InheritedWidget works
    • Provider, ChangeNotifier, Consumer, Selector
    • Why bigger apps need a more structured approach (leading into Bloc)
  10. Session 10

    Theming, assets & animation

    • ThemeData, ColorScheme, TextTheme, dark mode
    • Assets, fonts, app icon, splash screen
    • Implicit animations, Hero
    • AnimationController basics for custom effects
  11. Session 11

    Local storage & basic APIs

    • shared_preferences, storing sensitive data with secure storage
    • Calling APIs with the http package
    • Parsing JSON into models, handling missing or mistyped fields
    • Loading, error and empty states for every screen
  12. Session 12

    Mid-course project

    • Finish a complete multi-screen app
    • Build an APK and run it on a real phone
    • Code review: spotting what will be hard to scale
    • Setting up for the move to a three-layer architecture and Bloc
  13. Session 13

    Three-layer architecture

    • Presentation – Domain – Data
    • Folder structure for real projects
    • Separating UI from business logic
  14. Session 14

    Bloc & Cubit

    • Events, states, Cubit vs Bloc
    • BlocBuilder, BlocListener, BlocProvider
    • Designing state per screen
  15. Session 15

    RESTful APIs

    • HTTP methods, status codes, headers
    • Reading API docs, testing with Postman
    • Request / response models
  16. Session 16

    Networking with Dio

    • Dio client setup, base URL, timeouts
    • Interceptors: tokens, refresh tokens, logging
    • Centralized error handling
  17. Session 17

    Repositories & dependency injection

    • Repositories linking Data and Domain
    • Generating models with json_serializable
    • Dependency injection with get_it
  18. Session 18

    Building a base project

    • Dev / prod environments, routing, theming, localization
    • Combining Bloc + Dio + three layers into a reusable base
    • Git workflow and code review like a real team

After this package: You can set up a Flutter project from the ground up and join a real team using Bloc, a three-layer architecture and REST APIs.

Flutter Coaching 1-on-1

Want to start learning Flutter?

Tell me which package you're looking at and where you're starting from. I'll get back to you to set up a time.

Register now

Register for Flutter coaching

Pick a package and tell me about your experience and goals. I'll get back to you to arrange a schedule.

FAQ

Common questions

No. Flutter with AI and Fundamentals both start from zero. For Advanced, some coding experience helps, but the first 12 sessions still go through the fundamentals.