Looking into Flutter: Secrets of its Success & Review of Popular UI Libraries and Components

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • Flutter

    Flutter makes it easy and fast to build beautiful apps for mobile and beyond

  • Flutter is a relatively new declarative UI framework designed and maintained by Google to facilitate the implementation of cross-platform software solutions. Launched just in 2018, it has already gained recognition and popularity among developers. Responders of the popular Developer Survey 2020 held by Stack Overflow recognized Flutter as one of the most loved tools and technologies of the last year. A fresh developer survey from Statista names Flutter the most popular cross-platform framework utilized by software developers worldwide. Moreover, it has already reached the mark of 132K stars on GitHub.

  • getwidget

    Most popular and easy to use open source UI library with 1000+ Widgets to build flutter app.

  • GetWidget (previously known as GetFlutter) is probably one of the largest and most well-known UI libraries designed with the use of Flutter SDK. It comprises a huge collection (1000+) of reusable widgets intended for covering various cross-platform development needs. With GetWidget, you can easily create widely used UI elements such as tabs, buttons, menus, lists, sliders, and many others. According to the GetWidget team, the library helps to cut the development time by 30–40%. Here is an open-source News application based on GetWidget and Flutter.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Flutter-Neumorphic

    A complete, ready to use, Neumorphic ui kit for Flutter, 🕶️ dark mode compatible

  • If you follow web design trends, then you are certainly familiar with the term neumorphism. It relates to a new design approach that obtained quite extensive popularity in recent times. A neumorphic design implies extensive usage of shadows and gradients. Many developers find it difficult to implement UI elements with this kind of design with Flutter. If you are one of them, Flutter-Neumorphic is exactly what you need. This UI package will help you to create neumorphic UIs in Flutter apps much faster.

  • pluto_grid

    PlutoGrid is a dataGrid for flutter that can be controlled by the keyboard on desktop and web. Of course, it works well on Android and IOS.

  • A grid functionality is a vital aspect of any application, especially if you are working on a data-intensive solution. You can consider PlutoGrid to make the implementation of this important element easier in Flutter apps. This is a client-side UI grid component for creating standard data tables that render well across various platforms. It can be navigated via the keyboard. Using this component, you can add many useful features to the table such as sorting&filtering, frozen columns, multiselection, cell renderer, grid as a popup, etc. It is also possible to enable a dark theme for the whole data table.

  • flutter_staggered_grid_view

    A Flutter staggered grid view

  • Staggered GridView is a useful instrument for displaying images in a feed-like manner that is not typical for a standard GridView. This approach is used in popular social networks (Instagram) and photo hostings (Pinterest). Staggered GridView comes with multiple columns, rows of varying sizes, and many other helpful features allowing you to easily present groups of images with different height and width parameters.

  • boxy

    Overcome limitations of built-in layouts, advanced flex, custom multi-child layouts, slivers, and more!

  • If you ever used Flutter’s built-in layout widgets, then you should know that it has some limitations related to the implementation of flex and custom layouts. You can overcome these difficulties by using Boxy. This tool is utilized for creating complex layouts with multiple children that help to arrange the interface structure of your Flutter app. Boxy offers a set of utilities for layouts, dynamic widget inflation, slivers, and many other useful things.

  • timeline_tile

    A package to help build customisable timelines in Flutter.

  • TimelineTile is a UI component that enables you to represent events or processes in chronological order via a timeline in Flutter. Using TimelineTile, you can build a vertical or horizontal timeline and complement it with additional items (icons, images, text). This component gives you the freedom to customize any timeline element according to your needs.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • charts

  • Data visualization is a tricky task for any programmer. Therefore it is nice to have a good charting library in your arsenal. Charts is a charting library that certainly deserves your attention. It is designed internally at Google, though it is not the company’s official product. Written in Dart and based on Material Design, this library suits well for various data visualization purposes in Flutter apps. It supports an array of charts (bar, line, time series, pie, scatter plot, etc.) for visualizing complex data and making it more comprehensible for further analysis.

  • fl_chart

    FL Chart is a highly customizable Flutter chart library that supports Line Chart, Bar Chart, Pie Chart, Scatter Chart, and Radar Chart.

  • FL Chart is one more charting option for the Flutter ecosystem that I would recommend for consideration. It is a robust Flutter chart library used for creating popular charts. Currently, the list of available chart types includes the following: line chart, bar chart, pie chart, scatter chart, and radar chart.

  • flutter_form_builder

    Simple form maker for Flutter Framework

  • Flutter FormBuilder is an intuitive tool designed to help you in creating cross-platform forms, and thereby provide a reliable communication channel between users and a Flutter application. It comprises a range of input widgets encountered in standard forms: text field, checkbox, slider, rangepicker, datepicker, etc. If needed, this form maker also gives you an opportunity to produce custom input fields. Numerous built-in validators (number, mail, min, max, etc.) help to ensure that users submit only valid data. You can incorporate a combination of several validators and conditional validation (the validation of one field depends on the value entered in other specific fields).

  • table_calendar

    Highly customizable, feature-packed calendar widget for Flutter

  • When you require assistance in arranging activities (meetings, tasks, appointments) in a time sequence in Flutter projects, take a look at TableCalendar. This widget has a rich API allowing you to build multifunctional calendars with multiple view formats (week, two weeks, month) and customizable styling. Besides standard one-day activities, you can schedule custom events such as recurring ones. It also supports dynamic events and holidays. The localization feature will help you to reach more potential users from different countries.

  • flutter_map

    A versatile mapping package for Flutter. Simple and easy to learn, yet completely customizable and configurable, it's the best choice for mapping in your Flutter app.

  • Flutter Map is a map widget that brings the ability to visualize geographic data to your app. In fact, it is a Dart implementation of a popular JS mapping library named Leaflet. With Flutter Map, you can build interactive maps and enrich them with various features (panning, zooming, markers, etc.). It also supports offline maps. Numerous plugins allow extending the core feature set with additional functionalities.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts