Flutter Developer Roadmap
Learn Dart, then build Flutter apps that run on a phone screen beside your code: layouts, navigation, state, data and four complete apps.
71,280+ codders enrolled across these courses
628 lessons675 challenges2,796 quiz questions
- Beginner friendly
AI-assisted coding help
Hands-on interactive lessons
Audio narration on every lesson
Quizzes to test your knowledge
12 free certificates along the path
The Flutter roadmap, step by step
Each step is a Coddy course. Your progress is saved per course.
- 1Step 12 sections, in order
- 2Step 2
Classes in Dart
Start this stepStartClasses, objects, constructors, inheritance and mixins: what every Flutter widget is made of.Start - 3Step 3
Your first Flutter appsDedicated page
Start this stepStartWidgets, text, rows and columns, then buttons, text fields, switches and setState. Ends with a tip calculator.StartDedicated page2 sections, in order - 4Step 4
Screens and layout
Start this stepStartLists, cards, grids, moving between screens, tabs, and layouts that fit any phone, with themes and dark mode.Start2 sections, in order - 5Step 5
State management
Start this stepStartLifting state up, Provider and Riverpod, and when to use which. Ends with a shopping cart shared by two screens.Start - 6Step 6
Data and the network
Start this stepStartFutures, async and await, FutureBuilder, JSON into Dart classes, pull to refresh, and dates and prices with intl.Start - 7Step 7
Four complete apps
Start this stepStartA to-do list, a quiz, a store with a cart and a habit tracker, each built step by step.Start - 8Step 8
The terminal and GitDedicated page
Start this stepStartThe command line, then Git: commits, branches, merges and fixing mistakes.StartDedicated page2 sections, in order
Learn by Doing
Write real code, query databases, build websites, and master AI prompts. Our interactive lessons cover every skill modern developers need.
Build Your Streak
Stay consistent and watch your progress grow! Track your daily coding habit, protect your streak with freeze days, and earn rewards for showing up every day.
12 days streak
Return tomorrow to keep your streak!
January 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
21
22
23
24
25
26
27
28
29
30
Double or Nothing
Day 5 of 7
Streak Freeze
2 left
You're Not Alone
Compete on global leaderboards, invite friends to earn rewards, and celebrate each other's wins. Coding is better with friends!
Every way to learn
Read, listen, test yourself, ask the AI, or look up anything you've already covered. Every lesson meets you where you are.
A variable is a named container that stores a value you can reference later in your program.
In Python, you create one by writing the name, an equals sign, then the value you want to store.
The value can change over time. Reassigning the name simply points it to a new value.
Earn a Certificate
Earn certificates for every course you complete. Add them to your LinkedIn profile and resume to showcase your coding expertise to employers.
Why learn Flutter on Coddy
- Your app runs on a phone screen next to your code, with Run and Hot reload.
- Checks look at what your app shows, so you know the screen works, not just the code.
- Nothing to install: no Android Studio, no emulator, no phone.
- When you get stuck, Bugsy points at the problem without writing the answer for you.