Skip to content

Living resources to learn Flutter that I've personally found valuable.

Notifications You must be signed in to change notification settings

yusera-ansari/flutter-learning-resources

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

Flutter Learning Resources (in progress)

Living resources to learn Flutter that I've personally found valuable.

Flutter

Work in progress

This document is currently in progress. Here are the completion statuses for each section:

  • Dart Language
    • Fundamentals
    • Algorithm & Data Structures
    • Paradigms
    • SOLID Principles
    • Design Patterns
  • State Management
    • BLoC
    • Riverpod
    • RxDart
  • Architectural Pattern
    • Clean Architecture
    • MVVM Architecture
    • Modern App Architecture
  • Testing

Priority Levels

Priority Emoji Description
Must 🔥 Essential resources for primary references and comprehensive learning.
Alternative 🔄 Substitution for essential resources offers different approaches but may be less comprehensive.
Recommended 👍 Suggested resources for thorough understanding and exploration.
Optional 💡 Supplementary resources for further exploration in your spare time.
Watchlist 👀 Promising resources that have yet to be explored.

Table of Contents


Dart Language

  • Fundamentals

    • 🔥 Introduction to Dart - The official Dart documentation provides a basic familiarity with the Dart language, covering basic syntax, types, patterns, functions, control flow, error handling, classes & objects, class modifiers, concurrency, and null safety.
    • 🔥 Dart Tutorials - The official Dart tutorials cover fundamental topics for building applications, including basics like streams and packages, as well as server-side Dart tutorials to develop scripts, command-line apps, and server apps.
    • 🔥 Dart Codelabs - The official Dart codelabs provide hands-on coding experiences using DartPad for general topics like the Dart cheatsheet, Iterable collection, Asynchronous programming, and records & patterns.
    • 🔄 Dart Crash Course - A YouTube playlist by Net Ninja provides a quick guide to learn Dart from scratch, readying you to build Flutter apps, covering basic syntax, types, functions, lists & sets, control flow, maps, classes, method overriding, generics, asynchronous programming, and data fetching.
    • 👍 Effective Dart - The official Dart guidelines cover best practices and common pitfalls for writing clear, concise, and effective code, including the style, documentation, usage, and design guides.
    • 👍 Records and Pattern Matching in Dart - Complete Guide - An article by Sandro Maglione provides a comprehensive guide to the records and pattern matching features in Dart 3, covering the background, syntax, and practical examples.
  • Algorithm & Data Structures

  • Paradigms

    • 🔥 OOPS in Dart - An article by Devansh Sachan that provides a comprehensive explanation of object-oriented programming (OOP) concepts in Dart, including classes, objects, encapsulation, inheritance, polymorphism, abstraction, mixins, and interfaces.
    • 🔥 Practical Functional Programming in Dart & Flutter - A YouTube video by Reso Coder that explains the basics of practical functional programming (FP) concepts with the Dart language, covering the contrast with imperative programming, OOP class hierarchies, and error handling with the fpdart package.
  • SOLID Principles

  • Design Patterns

    • 👍 Design Patterns in Dart - A repository by Scottt2 that provides definitions and examples for all design patterns implemented in the Dart language.
    • 💡 Design Patterns in Flutter for beginners - A YouTube playlist by Rivaan Ranawat that explains essential design patterns such as Factory, Singleton, Prototype, and Adapter implemented in the Dart language.

State Management


Architectural Pattern


Testing

About

Living resources to learn Flutter that I've personally found valuable.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published