An awesome list that curates the best Flutter libraries, tools, tutorials, articles and more.

Last update: Jun 27, 2022

Github Repositories Entries Awesome Awesome

Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase. If you appreciate the content 📖 , support projects visibility, give 👍 | | 👏

Contents

Articles

Introduction

Websites / Blogs

Tutorial

Beginner

Intermediate

Advanced

Howtos

Videos

Components

Demonstrations

UI

Sticky Headers

Drawers

Bottom bars

Bottom Sheets

Sliders

UI Helpers

Material Design

Cupertino Design

Effect

Calendar

Login

Backend-Driven

  • Dynamic Widget [1061] - Build your dynamic UI with json, and the json format is very similar with flutter widget code by Denny Deng.

Image

Image Picker

Map

Charts

Navigation

  • Fluro [3329] - The brightest, hippest, coolest router for Flutter with Navigation, wildcard, query, transitions by Posse.
  • PageView Indicator [130] - Build page indicators for the PageView by Leo Cavalcante.
  • Deep Link Navigation [52] - Elegant abstraction for complete deep linking navigation in Flutter by Dennis Krasnov.
  • Get [5106] - Navigate between screens & display snackbars/dialogs/bottomSheets without context by Jonny Borges.
  • Beamer [265] - Route through guarded page stacks and URLs using the Navigator 2.0 API effortlessly by Sandro Lovnički.

Auth

Text & Rich Content

Analytics

Internationalization

Styling

  • Flutterial [1419] - Flutter Material Theme explorer by Erick Ghaumez.
  • Pigment [181] - Simple but useful package for use colors in flutter.

Media

Audio

Video

Voice

Storage

Preferences

Monetization

Templates

Clone

Machine Learning

Vision

Augmented Reality

Plugins

  • Pub packages - Packages filter in Dart Pub Repository.
  • Plugins - Official Flutter Team Plugins.

Device

Scanner

Bluetooth / NFC / Beacon

Storage

Services

Frameworks

State management

Standard

  • Bloc [7960] - Collection of packages that help implement the BLoC design pattern by Felix Angelov.
  • MobX [2012] - Supercharge the state-management in your apps with Transparent Functional Reactive Programming (TFRP). Port of MobX from the Js/React land.
  • Provider [3920] - State-management library for Flutter by Remi Rousselet.
  • RiverPod [2059] - Provider, but different by Remi Rousselet.
  • GetX - Contextless, State-management & navigation by Jonny Borges.
  • Binder [163] - A lightweight, yet powerful way to bind your application state with your business logic, by Romain Rastel.

Redux / ELM / Dependency Injection

  • Built redux [81] - Automatic subscribing to your redux stores. Based on the built pattern by David Marne.
  • Redux.dart [478] - Port of Redux to Dart with an ecosystem of middleware, Flutter integrations, and time traveling dev tools by John Ryan and Brian Egan.
  • Redux [1516] - Built to work with redux.dart, utilities that allow you to easily consume a Redux Store to build Widgets.
  • Inject [846] - Compile-time dependency injection by Google.
  • Flux [359] - Implementation of the Flux framework by Google.
  • Fish [7171] - Alibaba Redux implementation.
  • Async Redux [195] - Redux without boilerplate. Allows for both sync and async reducers by Marcelo Glasberg.

Widgets

Data

Backend

Animation

Testing

Web

Experimental

This section contains libraries that take an experimental or unorthodox approach.

Engines

Rendering

  • Graphx [282] - Making drawings and animations extremely simple, inspired by Flash, by Roi Peker.

Game

Open source games

Game Engine resources

  • Awesome Flame - Curated list of the best Flame games, projects, libraries, tools, tutorials, articles and more by Flame Engine.

Open Source Apps

Premium

Top

Utilities

VSCode

IntelliJ / Android Studio

Desktop

Books

Learning Flutter - Beginners

Cookbooks

Podcasts

English

Portuguese

Spanish

Russian

Bonus

Fun

Hardware

Guide & Interviews

Community

Presentation material

  • Logo - Logo for stickers impressions.

Communication

Misc

🇦🇴 Angola

🇦🇺 Australia

Bangladesh

🇧🇷 Brazil

cm Cameroon

🇨🇦 Canada

🇨🇮 Côte d'Ivoire (Ivory Coast)

🇩🇰 Denmark

🇪🇹 Ethiopia

🇫🇷 France

🇩🇪 Germany

🇬🇷 Greece

🇮🇹 Italy

🇮🇳 India

🇮🇱 Israel

🇮🇩 Indonesia

🇯🇵 Japan

🇰🇪 Kenya

🇰🇷 Korea

🇲🇾 Malaysia

🇳🇬 Nigeria

🇵🇰 Pakistan

🇵🇭 Philippines

🇵🇱 Poland

🇵🇹 Portugal

🇵🇪 Peru

🇷🇺 Russia

🇪🇸 Spain

🇱🇰 Sri Lanka

🇹🇷 Turkey

🇺🇦 Ukraine

🇬🇧 United Kingdom

🇺🇸 United States

🏴 Kurdistan

🇳🇴 Norway

🇺🇿 Uzbekistan

License

CC0

To the extent possible under law, Robert Felker has waived all copyright and related or neighboring rights to this work.

GitHub

https://github.com/Solido/awesome-flutter
Comments
  • 1. Update README.md

    I have added Two of the Udemy's best instructors courses Stephen Grider and Maximilian Schwarzmüller

    https://www.udemy.com/dart-and-flutter-the-complete-developers-guide/ https://www.udemy.com/learn-flutter-dart-to-build-ios-android-apps/

    Reviewed by clarktank at 2018-06-28 22:42
  • 2. added flutter_timeline in ui section

    Please read How to contribute before creating a submission.

    Description

    added flutter_timeline to ui. https://github.com/softmarshmallow/flutter-timeline


    Checklist


    Feel free to add this badge to your repository after it's accepted to awesome-flutter.

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by softmarshmallow at 2020-08-10 02:55
  • 3. Add Sticky Infinite List package link

    Highly configurable sticky headers package with ability to use inside scroll with positive and negative direction infinite list.

    It fixes this kind of issues https://i.ibb.co/ZLJvwsG/sticky-jump.gif that I got in all packages with sticky headers implementation.

    In addition to ability use it in straightforward way (see docs) this package exposes classes that can be extended before it's usage

    Example project

    Reviewed by TatsuUkraine at 2019-07-10 11:37
  • 4. Added Beamer package to Navigation section

    Description

    Added beamer package (pub, GitHub) to Navigation section. This package eases the use of Navigator 2.0 API and also enables browser sync by default.


    Checklist

    • [x] I read How to contribute
    • [x] I edited the SOURCE.md file only
    • [x] Added a link to the repo in the PR

    Feel free to add this badge to your repository after it's accepted to awesome-flutter.

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by slovnicki at 2021-02-15 23:58
  • 5. Environment specific config generator

    Note: Not sure if it was an appropriate place in source.md, let me know if you want me to move it under another section

    Dart command tool to generate Dart class and .env files with keys and params from command.

    Allows to configure set of fields, provided in environment_config.yaml or in package.yaml.

    Command can be executed for any Flutter application from terminal like

    flutter pub run environment_config:generate --<key_name>=<key_value>
    

    with key_names specified in YAML file and key_values for particular build environment.

    Primarily created to simplify Flutter App config generation during Application builds in CodeMagic, Bitrise or any other build automation tools.

    Reviewed by TatsuUkraine at 2020-02-26 08:30
  • 6. Add tx_navibar package . It is a amazing impl for dribbble design.

    …m navigation bar . It is the flutter implementation for dribbble design( https://dribbble.com/shots/5925052-Google-Bottom-Bar-Navigation-Pattern )

    You've read How to contribute right ?

    So tell me more about your awesome contribution and add the badge to your repo after it's accepted :D

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by TaurusXi at 2019-04-01 11:59
  • 7. added article - sending and sharing data

    Hello, I added an article for beginners about how to send to and share data with widget and pages (constructor, InheritedWidget, callback, singletons etc).

    Reviewed by frideosapps at 2019-02-28 23:18
  • 8. Add timeline_tile package and beautiful_timelines repository

    #384 Description

    timeline_tile is a package that helps to build custom timelines. The beautiful_timelines repository showcases some real world timelines built with the package.


    Checklist

    Reviewed by JHBitencourt at 2020-06-08 01:58
  • 9. Added flutter_flavorizr (medium news + github)

    You've read How to contribute right ? Yes

    So tell me more about your awesome contribution and add the badge to your repo after it's accepted :D

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    

    One month ago I’ve been working on a Flutter project with different flavors. This was the first time in Flutter, and it’s been pretty tedious. That's why I've created the flutter_flavorizr library, a tool which easily flavorizes your Flutter application in less than 3 minutes. It works for both Android and iOS destinations.

    Just define your flavorizr configuration in your pubspec.yaml

    flavorizr:
      app:
        android:
          flavorDimensions: "flavor-type"
        ios:
    
      flavors:
        apple:
          app:
            name: "Apple App"
    
          android:
            applicationId: "com.example.apple"
    
          ios:
            bundleId: "com.example.apple"
    
        banana:
          app:
            name: "Banana App"
    
          android:
            applicationId: "com.example.banana"
          ios:
            bundleId: "com.example.banana"
    

    and run

    flutter pub run flutter_flavorizr
    

    And you are ready to go

    Reviewed by AngeloAvv at 2020-05-19 19:50
  • 10. Added Get

    Navigate between screens, display snackbars, dialogs and bottomSheets, from anywhere in your code without context with Get.

    You've read How to contribute right ? yes

    So tell me more about your awesome contribution and add the badge to your repo after it's accepted :D ok

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by jonataslaw at 2020-03-20 18:41
  • 11. Added "image-sequence-animator" to UI

    I find GIF files very restrictive even though they are kind to the system resources. This package proposes an alternative to GIF files by using image sequences instead. As a result, the animations get all the controls a video player would have.

    PS: I believe GIF files are not controllable- please correct me if I'm wrong.

    Reviewed by aliyigitbireroglu at 2019-08-18 22:38
  • 12. Add Supabase chat app tutorial

    Please read How to contribute before creating a submission.

    Description

    Supabase recently launched an official tutorial on how to create a real time chat application using Flutter and Supabase, so thought it would be awesome to add it to awesome-flutter!

    Link to the article https://supabase.com/blog/2022/06/30/flutter-tutorial-building-a-chat-app


    Checklist

    • [x] I read How to contribute
    • [x] I edited the SOURCE.md file only
    • [x] Added a link to the repo in the PR
    Reviewed by dshukertjr at 2022-06-30 15:31
  • 13. Added 'Vandad Nahavandipoor' video courses

    Please read How to contribute before creating a submission.

    Description

    Free Flutter, State Management and much more amazing video courses by Vandad Nahavandipoor

    Submission description here


    Checklist

    • [x] I read How to contribute
    • [x] I edited the SOURCE.md file only
    • [x] Added a link to the repo in the PR

    Feel free to add this badge to your repository after it's accepted to awesome-flutter.

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by its-me-mahmud at 2022-06-22 16:01
  • 14. Add `convenient_test` - write and debug tests easily, with action history, time travelling, screenshots, rapid re-execution, video recordings, interactive mode and more

    Please read How to contribute before creating a submission.

    Description

    Package description: Write and debug tests easily, with action history, time travelling, screenshots, rapid re-execution, video recordings, interactive mode and more.

    https://github.com/fzyzcjy/flutter_convenient_test/


    Checklist

    • [x] I read How to contribute
    • [x] I edited the SOURCE.md file only
    • [x] Added a link to the repo in the PR

    Feel free to add this badge to your repository after it's accepted to awesome-flutter.

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by fzyzcjy at 2022-05-13 00:21
  • 15. Add Flutter Clutter blog to 'Websites / Blogs' section

    Reviewed by flutter-clutter at 2022-04-26 20:34
  • 16. Add Appainter

    Please read How to contribute before creating a submission.

    Description

    Appainter is a material theme editor and generator for Flutter to configure and preview the overall visual theme of a material app.

    Repo: https://github.com/zeshuaro/appainter

    App link: https://appainter.dev/


    Checklist

    • [x] I read How to contribute
    • [x] I edited the SOURCE.md file only
    • [x] Added a link to the repo in the PR

    Feel free to add this badge to your repository after it's accepted to awesome-flutter.

    Awesome Flutter
    <a href="https://github.com/Solido/awesome-flutter">
       <img alt="Awesome Flutter" src="https://img.shields.io/badge/Awesome-Flutter-blue.svg?longCache=true&style=flat-square" />
    </a>
    
    Reviewed by zeshuaro at 2022-04-03 13:30

Related

Flutter animation tutorials, such common animation, flare animation.
Flutter animation tutorials, such common animation, flare animation.

❤️ Star ❤️ the repo to support the project or ?? Follow Me.Thanks! Facebook Page Facebook Group QQ Group Developer Flutter Open Flutter Open 963828159

May 2, 2022
A collection of Screens and attractive UIs built with Flutter ready to be used in your applications. No external libraries are used. Just download, add to your project and use.
A collection of Screens and attractive UIs built with Flutter ready to be used in your applications. No external libraries are used. Just download, add to your project and use.

Flutter Screens A collection of Login Screens, Buttons, Loaders and Widgets with attractive UIs, built with Flutter, ready to be used in your applicat

Jul 1, 2022
Best 6 Flutter Login Screen Design
Best 6 Flutter Login Screen Design

Flutter Login Home Animation A new open-source Flutter project that enables the developer to quickly get started with the Flutter animation and applic

Jun 29, 2022
Flutter package for creating awesome animations.
Flutter package for creating awesome animations.

?? Simple Animations Simple Animations is a powerful package to create beautiful custom animations in no time. ?? fully tested ?? well documented ?? e

Jun 28, 2022
A curated collection of awesome gradients made in Dart for Flutter
A curated collection of awesome gradients made in Dart for Flutter

Flutter Gradients A curated collection of awesome gradients made in Dart (port of https://webgradients.com for Flutter). Only linear gradients include

Apr 21, 2022
A collection of awesome flutter loading animation
A collection of awesome flutter loading animation

loading_indicator_view A collection of awesome flutter loading animation Demo Usage loading_indicator_view: ^1.1.0 Animation types Type Type Type Typ

May 15, 2022
A collection of awesome loading animations
A collection of awesome loading animations

NVActivityIndicatorView ⚠️ Check out LoaderUI (ready to use with Swift Package Mananger supported) for SwiftUI implementation of this. ?? Introduction

Jul 2, 2022
🐱‍👤 Flutter-Animation 🔥 🔥 List Animated Staggered Animations
 🐱‍👤 Flutter-Animation 🔥 🔥 List Animated Staggered Animations

??‍?? Staggered Animations made with algeria ❤

Jun 15, 2022
Multi directional infinite list with Sticky headers for Flutter applications
Multi directional infinite list with Sticky headers for Flutter applications

Sticky Infinite List Infinite list with sticky headers. This package was made in order to make possible render infinite list in both directions with s

Jun 12, 2022
filterList is a flutter package which provide utility to search/filter data from provided dynamic list.
filterList is a flutter package which provide utility to search/filter data from provided dynamic list.

filter_list Plugin FilterList is a flutter package which provide utility to search/filter on the basis of single/multiple selection from provided dyna

Jun 29, 2022
Example project for sticky infinite list

sticky_infinite_list_example Example for sticky infinite list package Example for v1.x.x can be found here Getting Started This project is a starting

Mar 28, 2022
A contact list UI clone for trainees during a national mobile development training session
A contact list UI clone for trainees during a national mobile development training session

contactapp A contact list UI clone for trainees during a national mobile development training session This project was built during a training session

Dec 14, 2021
Generate a timeline for a list
Generate a timeline for a list

Timeline A flutter package that allows you to create basic timelines on your flutter application. This is customizable and easy to plugin to your appl

Mar 22, 2022
This repository demonstrates use of various widgets in flutter and tricks to create beautiful UI elements in flutter for Android and IOS
This repository demonstrates use of various widgets in flutter and tricks to create beautiful UI elements in flutter for Android and IOS

AwesomeFlutterUI The purpose of this repository is to demonstrate the use of different widgets and tricks in flutter and how to use them in your proje

May 20, 2022
✨A clean and lightweight loading/toast widget for Flutter, easy to use without context, support iOS、Android and Web
✨A clean and lightweight loading/toast widget for Flutter, easy to use without context, support iOS、Android and Web

Flutter EasyLoading English | 简体中文 Live Preview ?? https://nslog11.github.io/flutter_easyloading Installing Add this to your package's pubspec.yaml fi

Jun 22, 2022
A flutter package which contains a collection of some cool and beautiful effects; support android and ios
A flutter package which contains a collection of some cool and beautiful effects; support android and ios

flutter effects A flutter package which contains a collection of some cool and beautiful effects; support android and ios . Screenshot type support ch

Jun 21, 2022
A fresh and modern Google Contacts manager that integrates with GitHub and Twitter.

Flokk A fresh and modern Google Contacts manager that integrates with GitHub and Twitter. Demo Builds Web: https://flokk.app Linux: https://snapcraft.

Jun 25, 2022
🔔 A flutter package to create cool and beautiful text animations. [Flutter Favorite Package]
🔔  A flutter package to create cool and beautiful text animations. [Flutter Favorite Package]

Animated Text Kit A flutter package which contains a collection of some cool and awesome text animations. Recommended package for text animations in C

Jun 29, 2022
Fun canvas animations in Flutter based on time and math functions.
Fun canvas animations in Flutter based on time and math functions.

funvas Flutter package that allows creating canvas animations based on time and math (mostly trigonometric) functions. The name "funvas" is based on F

Jun 15, 2022