Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Flutter Masterclass (from Novice to Ninja)
Rating: 4.4 out of 5(303 ratings)
2,330 students

Flutter Masterclass (from Novice to Ninja)

Learn how to make dynamic and interactive Flutter applications for mobiles.
Last updated 1/2025
English
English [Auto],Spanish [Auto],

What you'll learn

  • Learn how to make Flutter applications from the ground up
  • Learn how to integrate flutter with a Firebase database
  • Discover how to add animations to your Flutter applications
  • Learn how to add authentication to Flutter applications
  • Learn how to use Riverpod for state management in Flutter
  • Learn the Dart programming language as you go

Course content

12 sections129 lectures14h 54m total length
  • Introduction & Course Files5:40

    Learn how flutter creates cross-platform apps from a single Dart code base, compiling to native iOS, Android, web, and desktop, with material design and a rich package ecosystem on pub.dev.

  • Installing on Windows10:48

    Install Flutter on Windows by following the getting started guide, including Git and Android Studio setup. Configure the Flutter SDK path and run Flutter Doctor to verify a ready environment.

  • Installing Flutter on Mac13:06

    Install flutter on Mac, identify apple silicon, and set up git, Android Studio, and Android emulator. Run flutter doctor to verify setup and note iOS prerequisites with Xcode and CocoaPods.

  • Making a New Flutter Project4:59

    Create a flutter project with the command line interface, naming it with underscores. Open it in VS Code, install flutter and dart extensions, and run from main.dart on android emulator.

  • Quick Project Overview4:06

    Explore the Flutter starter project by focusing on the lib folder, the main.dart entry point, and how runApp initializes the app with a route widget and a material app.

  • Widgets8:09

    Learn how Flutter apps use widgets to form a widget tree from the root widget. Recognize stateless and custom widgets and the role of build.

  • Material App & Scaffold11:42

    Explore how to build with Material App and Scaffold in Flutter, using home, app bar, and body to structure the screen. Learn performance tricks like const and hot reload.

  • Stateless Widgets6:26

    Create a stateless widget with a build method to enable hot reload, return a widget tree, and place the home widget in the scaffold body to reflect changes instantly.

  • Containers7:54

    Explore how the Flutter container acts as a wrapper to apply padding, margin, color, and size, then customize text with style options like font size, decoration, and italic.

  • Imports & Quick Refactor5:45

    Refactor a Flutter app by moving the scaffold into the home widget, creating a separate home.dart, and adjusting imports for a cleaner, multi-screen structure.

  • Columns12:18

    Explore the column widget by building a column with a children list of containers, and control layout with cross axis and main axis alignment, including stretch, center, and space options.

  • Rows8:46

    Learn to use rows in Flutter to display widgets left to right, with main and cross axis alignment, and build a coffee prefs component using nested rows and a column.

  • Images6:53

    Learn how to add images in Flutter by creating an assets folder, configuring pubspec.yaml, and loading assets with image.asset to display coffee_bean.png and sugar_cube.png.

  • The Expanded Widget6:20

    Learn how the expanded widget grows to fill the space in a column, wrapping with widget to constrain its child and prevent overflow via box fit and bottom center alignment.

  • Buttons & Cick Events6:56

    Learn to use Flutter buttons (elevated, filled, filled tonal, outline, text), assign on pressed callbacks to increase strength and sugars, and customize color with style from.

  • Stateful Widgets10:59

    Turn stateless widgets into a stateful widget to manage changing strength and sugars, using setState to trigger rebuilds that update coffee bean and sugar cube visuals.

  • Control Flow in Lists5:15

    Learn to use for loops inside a Dart list to render coffee bean and sugar cube images from strength and sugars, with a no sugars message at zero.

  • Making Reusable Widgets12:10

    Create reusable drop-in widgets, including a styled body text and a styled button, to apply consistent text styles and button behavior by passing text and onPressed as arguments.

Requirements

  • Basic programming concepts in any language - loops, variable, functions, etc.

Description

Flutter is a fantastic framework for creating cross-platform applications (mobile, desktop & web), using the Dart programming language.

In this Flutter Masterclass course, you'll learn how to make Flutter applications from scratch (no prior Flutter knowedge is required), including all the basics (such as widgets, layouts, images and styles) and how to make custom themes and how to set up multiple screens and routes.

You'll also learn how to make data models, how to handle forms & user input, manage global state (using Riverpod) and how to integrate a Flutter application with a database and authentication service (using Firebase).

On top of all that, you'll be learning how to animations to your Flutter applications as well, to give them a sleek and natural feel.

As an added bonus - there's a whole chapter near the end of the course about the Dart programming language, which we, as developers, use to make Flutter applications. So the only requirement before you start, is basic knoweldge of essential programming concepts - loops, variables, functions, control flow etc.

Along the way, we'll also make a fully functional mobile application - and by the end of this course, you'll be confident enough to make your very own Flutter applications from scratch.

If you want to preview my teaching style before you buy, you can find me on YouTube - Net Ninja - where I upload thousands of free web development tutorials!


Who this course is for:

  • beginner/intermediate developers with no (or little) Flutter experience.