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

Overview

pub package Build Status Open Source Love License Twitter Follow

GetWidget Flutter UI KIT Library

GetWidget is a 100% free Flutter open-source UI Kit library built with Flutter SDK to make Flutter development easier and more joyful than ever. GetWidget has 1000+ pre-build widgets that you can reuse to develop both Flutter mobile app and web app. Our motto is to provide the best Flutter UI library to the Flutter community to speed up their development process and build awesome apps with pre-build Flutter Library Components.

Table of contents

Screenshot

GetWidget UI KIT Collection

Quick start

Read the Getting started page Forum Support and discussion

Features

we have launched the library with the following components :

GETWIDGET WIDGET COLLECTION

Flutter Button Widget | Flutter Elevated Button Widget | Flutter Rounded Button Widget | Flutter Square Button Widget | Flutter Icon Button Widget | Flutter Social Button Widget | Flutter Badge Widget | Flutter Avatar Widget | Flutter Image Widget | Flutter Card Widget | Flutter Carousel Widget | Flutter Tile Widget | Flutter Tabbar Widget | Flutter Typography | Flutter Toaster Widget | Flutter Switch Toggle Widget | Flutter Drawer Widget | Flutter Accordian Widget | Flutter Alert Widget | Flutter Appbar Widget | Flutter Searchbar Widget | Flutter Floating Widget | Flutter Rating Widget | Flutter Dropdown Widget | Flutter Loader Widget | Flutter Progress Bar Widget | Flutter Shimmer Widget | Flutter Animation Widget | Flutter Border Widget | Flutter Bottomsheet Widget | Flutter Checkbox Widget | Flutter CheckboxListTile Widget | Flutter Radio Button Widget | Flutter Radio ListTile Widget | Flutter Sticky Header Widget

Demo

Play Store

GetWidget playstore Demo

An Open-Source News App Built With GetWidget & Flutter

Ionicfirebaseapp.com has been developed an open-source News Mobile App with GetWidget, So can start building app faster to get an overview and do customization. You can Download News App Souce Code here: https://www.ionicfirebaseapp.com/products

Contributing

GetWidget is 100% free and open source. We encourage and support an active, healthy community that accepts contributions from the public – including you. There are a couple of ways in which you can contribute to the growing community of getwidget.

  • Pick up any issue marked with "good first issue"
  • Fix a bug
  • Write and improve some documentation. Documentation is very critical to us. We would appreciate help in adding multiple languages to our docs.
  • If you are a developer, feel free to check out the source and submit pull requests.
  • Dig into CONTRIBUTING.MD, which covers submitting bugs, requesting new features, preparing your code for a pull request, etc.
  • Please don't forget to like, follow, and star our repo! Join our growing community to keep up to date with the latest GetWidget development.

Flutter Getwidget Documentation

Installation Guide

Social Media

Twitter: https://twitter.com/getwidgetdev

Facebook: https://www.facebook.com/getwidget

Linkedin: https://www.linkedin.com/showcase/getwidget/

Instagram: https://www.instagram.com/getwidgetdev/

Copyright-and-license

Code and documentation Copyright 2017-2020 the GETWIDGET Authors and IONICFIREBASEAPP Code released under the [MIT License]. Docs released under Creative Commons.

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

Comments
  • GFCarousel ERROR

    GFCarousel ERROR

    Describe the bug

    Error: Unexpected null value. at Object.throw_ [as throw] (http://localhost:51605/dart_sdk.js:4332:11) at Object.nullCheck (http://localhost:51605/dart_sdk.js:4662:30) at page_view.PageController.new.nextPage (http://localhost:51605/packages/flutter/src/widgets/page_view.dart.lib.js:366:38) at http://localhost:51605/packages/getwidget/components/carousel/gf_carousel.dart.lib.js:1031:38 at http://localhost:51605/dart_sdk.js:23808:9

    opened by Bilonik 7
  • Social Icons not found

    Social Icons not found

    Can't get social icons and brand color

    Screenshot 2021-01-09 at 6 22 08 PM

    GFButton( onPressed: (){}, text: "primary", icon: Icon(Icons.share), ),

    Better if icon installation and list is provided.

    opened by Vakil-Parth 6
  • lib/components/appbar/gf_appbar.dart:312:57: Error: No named parameter with the name 'nullOk'.

    lib/components/appbar/gf_appbar.dart:312:57: Error: No named parameter with the name 'nullOk'.

    Working fine in stable version after moving to beta and starting web app getting following error.

    ../flutter/.pub-cache/hosted/pub.dartlang.org/getwidget-1.2.2/lib/components/appbar/gf_appbar.dart:312:57: Error: No named parameter with the name 'nullOk'. final ScaffoldState scaffold = Scaffold.of(context, nullOk: true);
    ^^^^^^
    ../flutter/packages/flutter/lib/src/material/scaffold.dart:1918:24: Context: Found this candidate, but the arguments don't match. static ScaffoldState of(BuildContext context) {

    opened by dineelbathina 5
  • GFCarousel active page indicator is not being updated without

    GFCarousel active page indicator is not being updated without "onPageChanged"

    I noticed that the active page indicator is not being updated without explicitly call setState on onPageChanged callback.

    Currently, if I need to update the active page indicator, I have to use GFCarousel inside a stateful widget and set onPageChanged,

    onPageChanged: (index){
            setState(() {});
    },
    
    opened by yasalkhatib 5
  • Not Able to run application in latest Flutter Version 3.0.0

    Not Able to run application in latest Flutter Version 3.0.0

    Describe the bug Not able to run the application with the latest version of flutter. Getting Below compile-time error.

    /C:/Users/Deval/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/getwidget-2.0.5/lib/components/sticky_header/gf_sticky_header_builder.dart:63:28: Warning: Operand of null-aware operation '?.' has type 'WidgetsBinding' which excludes null.

    • 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('/C:/Users/Deval/AppData/Local/Flutter/flutter/packages/flutter/lib/src/widgets/binding.dart'). WidgetsBinding.instance?.endOfFrame.then((_) { ^ /C:/Users/Deval/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/platform-3.0.0/lib/src/interface/local_platform.dart:46:19: Error: Member not found: 'packageRoot'. io.Platform.packageRoot; // ignore: deprecated_member_use ^^^^^^^^^^^

    FAILURE: Build failed with an exception.

    • Where: Script 'C:\Users\Deval\AppData\Local\Flutter\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1156

    • What went wrong: Execution failed for task ':app:compileFlutterBuildDebug'.

    Process 'command 'C:\Users\Deval\AppData\Local\Flutter\flutter\bin\flutter.bat'' finished with non-zero exit value 1

    • Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

    • Get more help at https://help.gradle.org

    BUILD FAILED in 15s Exception: Gradle task assembleDebug failed with exit code 1

    Flutter Doctor

    Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel stable, 3.0.0, on Microsoft Windows [Version 10.0.22000.675], locale en-IN) [√] Android toolchain - develop for Android devices (Android SDK version 32.0.0) [√] Chrome - develop for the web [X] Visual Studio - develop for Windows X Visual Studio not installed; this is necessary for Windows development. Download at https://visualstudio.microsoft.com/downloads/. Please install the "Desktop development with C++" workload, including all of its default components [√] Android Studio (version 2021.2) [√] VS Code (version 1.67.1) [√] Connected device (4 available) [√] HTTP Host Availability

    ! Doctor found issues in 1 category.

    opened by devalp-pro 3
  • GF Intro Screen - Multiple Errors

    GF Intro Screen - Multiple Errors

    Using version 2.0.1-nullsafety.4 on ios simulator.

    missing initialIndex property setter in first example. property inActiveColor: is a mismatch with actual property of the widget, inactiveColor: This affects the second example too. One of them is a typo.

    introScreenBottomNavigationBar: GFIntroScreenBottomNavigationBar( does not show. Reverting back to version 1.2.4 without any code changes will make the Bottom navigator show.

    To recreate, use the 2.0.1 version, copy and paste your example code from https://docs.getwidget.dev/gf-intro-screen/ and give it a try.

    opened by jodymac 3
  • Don't set accordion content width to screen width

    Don't set accordion content width to screen width

    Describe the bug Add GFAccordion as a child of SimpleDialog, when it's collapsed, its width is the default SimpleDialog width. When accordion expanded, the width is much larger to reach the insetPadding of dialog.

    Expected behavior The expanded width should be the same as collapsed.

    Screenshots Collapsed Screen Shot 2021-02-10 at 23 36 20 Expanded Screen Shot 2021-02-10 at 23 40 20 Expanded: after deleting width: MediaQuery.of(context).size.width https://github.com/ionicfirebaseapp/getwidget/blob/9bceb782716bb5926d5dd488de1cdaca7af3ae61/lib/components/accordian/gf_accordian.dart#L160 Screen Shot 2021-02-10 at 23 36 41

    Desktop (please complete the following information):

    • OS: macOS
    • Version 10.15

    Additional the file name and folder name should be accordion rather accordian?

    opened by narumi147 3
  • Documentation site is down

    Documentation site is down

    It's down since yesterday. Is there other way we can view the documentation or perhaps include the source code in the app itself and not just the link of the docs site.

    opened by iamwilph 3
  • GFItemsCarousel height of tiles is wrong

    GFItemsCarousel height of tiles is wrong

    The way the height of a items container of GFItemsCarousel is calculated does not make sense at all and prevents users from creating thin carousels. In the code the height is set to size but this is related to the width of the item container. Do I miss something?

    Here size is set to account for the width of the items container.

    https://github.com/ionicfirebaseapp/getflutter/blob/75ca1fbe26169362d5c5ee207a9e503b208b02d3/lib/components/carousel/gf_items_carousel.dart#L88

      @override
      void initState() {
        offset = 0;
        animationController = AnimationController(
          duration: const Duration(milliseconds: dragAnimationDuration),
          vsync: this,
        );
        Future.delayed(Duration.zero, () {
          setState(() {
            final double localWidth = MediaQuery.of(context).size.width;
            width = localWidth;
            size = width / widget.rowCount;
          });
        });
        super.initState();
      }
    

    But then in the build function:

    https://github.com/ionicfirebaseapp/getflutter/blob/75ca1fbe26169362d5c5ee207a9e503b208b02d3/lib/components/carousel/gf_items_carousel.dart#L183

      Widget build(BuildContext context) => GestureDetector(
            onHorizontalDragStart: onSlideStart,
            onHorizontalDragUpdate: onSlide,
            onHorizontalDragEnd: onSlideEnd,
            child: Container(
              width: double.infinity,
              height: size,
              child: Stack(
                children: [
                  Positioned(
                    left: offset,
                    child: Row(
                      children: widget.children
                          .map((child) => Container(
                                width: size,
                                height: size,
                                child: child,
                              ))
                          .toList(),
                    ),
                  ),
                ],
              ),
            ),
          );
    
    Investigate 
    opened by degloff 3
  • Hot reaload issue

    Hot reaload issue

    Describe the bug

    when i use following code ,hot reload not work, button text not change when model.reading has been changed

    GFButton(
                        child: model.reading ? Text('Stop') : Text('Continuous'),
                        onPressed: () async {
                          if (!model.reading) {
                            await model.startInventory();
                          } else {
                            await model.stopInventory();
                          }
                        },
                      ),
    

    i must set a key for that to work

    GFButton(
                        key: ValueKey(model.reading),
                        //text: model.reading ? 'Stop' : 'Continuous',
                        child: model.reading ? Text('Stop') : Text('Continuous'),
                        onPressed: () async {
                          if (!model.reading) {
                            await model.startInventory();
                          } else {
                            await model.stopInventory();
                          }
                        },
                      ),
    

    is that expected?

    To Reproduce Steps to reproduce the behavior:

    1. Go to '...'
    2. Click on '....'
    3. Scroll down to '....'
    4. See error

    Expected behavior A clear and concise description of what you expected to happen.

    Screenshots If applicable, add screenshots to help explain your problem.

    Desktop (please complete the following information):

    • OS: [e.g. iOS]
    • Browser [e.g. chrome, safari]
    • Version [e.g. 22]

    Smartphone (please complete the following information):

    • Device: [e.g. iPhone6]
    • OS: [e.g. iOS8.1]
    • Browser [e.g. stock browser, safari]
    • Version [e.g. 22]

    Additional context Add any other context about the problem here.

    bug 
    opened by liugangnhm 3
  • Error compiling 3.0.1

    Error compiling 3.0.1

    Describe the bug Not possible to compile the source after update to 3.01

    Launching lib\main.dart on Android SDK built for x86 in debug mode...
    Running Gradle task 'assembleDebug'...
    ../../flutter/.pub-cache/hosted/pub.dartlang.org/getwidget-3.0.1/lib/components/sticky_header/gf_sticky_header_builder.dart:63:37: Error: Property 'endOfFrame' cannot be accessed on 'WidgetsBinding?' because it is potentially null.
     - 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../flutter/packages/flutter/lib/src/widgets/binding.dart').
    Try accessing using ?. instead.
                WidgetsBinding.instance.endOfFrame.then((_) {
                                        ^^^^^^^^^^
    

    Flutter 2.10.3 - stable

    opened by SteMMo33 2
  • GFDropdown

    GFDropdown

    The following _TypeError was thrown building GFDropdown(dirty, state: _GFDropdownState#682b8): type '(String?) => void' is not a subtype of type '((dynamic) => void)?'

    opened by Not996NotOT 4
  • Unable to load asset: icons/google.png

    Unable to load asset: icons/google.png

    Error while trying to load an asset: Failed to load asset at "assets/icons/google.png" (404) ══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════ The following assertion was thrown resolving an image codec: Unable to load asset: icons/google.png When the exception was thrown, this was the stack: C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/internal/js_dev_runtime/private/ddc_runtime/errors.dart 266:49 throw packages/flutter/src/services/asset_bundle.dart 258:7 load C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 45:50 C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/zone.dart 1653:54 runUnary C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 147:18 handleValue C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 766:44 handleValueCallback C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 795:13 _propagateToListeners C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 566:5 [_completeWithValue] C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 639:7 callback C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/schedule_microtask.dart 40:11 _microtaskLoop C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/schedule_microtask.dart 49:5 _startMicrotaskLoop C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 166:15 Image provider: AssetImage(bundle: null, name: "icons/google.png") Image key: AssetBundleImageKey(bundle: PlatformAssetBundle#1514c(), name: "icons/google.png", scale: 1) ════════════════════════════════════════════════════════════════════════════════════════════════════

    opened by khalid5555 1
  • GFCarrossel

    GFCarrossel

    I'm using the lib for a web application and the GFCarrousel component doesn't recognize the mouse click, when trying to drag an item from the list it remains unchanged.

    • Browser: Google Chrome
    • Flutter v3.0.5
    opened by ClayseNascimento 1
  • Enhance GFList tile to include a row of optional text buttons at the bottom

    Enhance GFList tile to include a row of optional text buttons at the bottom

    Is your feature request related to a problem? Please describe. This is just a suggest enhancement on the GF List tile

    Describe the solution you'd like Would like to have an option on the GFList tile to have a row of at least two text button or tags in the bottom row

    Describe alternatives you've considered I have explored using the card, option and I still find/think it would be neater to have this functionality has party of the GF List tile

    Additional context Screenshot 2022-10-26 at 2 12 24 AM

    opened by ivansempijja 1
Releases(v2.0.4)
  • v2.0.4(Aug 23, 2021)

  • v2.0.3(Jun 29, 2021)

  • v2.0.2(May 10, 2021)

  • v2.0.1-nullsafety.4(Apr 1, 2021)

  • 1.2.4(Nov 24, 2020)

    1.2.4 - 2020-11-24

    Fixed

    • [GFProgressBar] issue.
    • [GFBottomSheet] minor issue.
    • [GFIconButton] wrong touch issue. #195
    • [GFDropdown] minor issue.
    • [GFCarousel] issue. #185
    • Many more minor improvements.

    Added

    • Test cases added for couple of components
      • GFLoader
      • GFTypography
    Source code(tar.gz)
    Source code(zip)
  • 1.2.2(Oct 4, 2020)

    1.2.2 - 2020-10-02

    Fixed

    • [GFButton] width related issue.
    • [GFRadio] minor issue.
    • [GFRadioListTile] selection issue
    • [GFCheckbox] minor issue.
    • [GFCheckboxListTile] selection issue
    • Many more minor improvements.

    Added

    • few new compoenents added
      • GFBottomSheet
      • GFIntroScreen
      • GFAnimation
      • GFBorder
      • GFStickyHeader
    Source code(tar.gz)
    Source code(zip)
  • 1.1.3(Jul 30, 2020)

    1.1.3 - 2020-07-30

    Fixed

    • [GFAppBar] clear button does not fire onChanged #149
    • [GFCarousel] initialPage Not Honored if Page Indicators Enabled. #144
    • [GFCarousel] timer of the autoPlay is not disposed #143
    • [GFCarousel] active page indicator is not being updated without "onPageChanged" #139
    • [GFTabBar] Docs say about isScrollable which is not supported #132

    Update

    • couple of compoenents (WIP)
      • GFCheckboxTile
      • GFRadioTile
    Source code(tar.gz)
    Source code(zip)
  • 1.1.1(Jul 30, 2020)

Owner
Ionicfirebaseapp
We are here to build your next-generation cloud based web and mobile applications.
Ionicfirebaseapp
Open source cross-platform client for popular imageboards: 4chan.org and 2ch.hk

iChan (iOS) and Zchan (Android) Open source cross-platform client for popular im

null 50 Dec 31, 2022
GetX - one of the most popular state management solution in flutter

GteX Tutorial - Udemy GetX is one of the most popular state management solution in flutter. In addition to state management, GetX provides easy way to

Md. Siam 3 May 18, 2022
Quotes - a one page app that consume a JSON file of over 1000+ quotes

Quotes a one page app that consume a JSON file of over 1000+ quotes.

Yassin BENNKHAY 4 Jul 6, 2022
1000+ Pixel-perfect svg unicons for your next flutter project

flutter_unicons 1000+ Pixel-perfect svg unicons for your next flutter project ispired by Unicons and vue-unicons Demo Download the gallery here. Insta

charlot Tabade 23 Oct 9, 2022
Easily build your Widgets, Avoid parenthesis nesting, easy to build UI, A little like swift-ui.

tenon_mortise Easily build your Widgets, Avoid parenthesis nesting, easy to build UI, A little like swift-ui. Getting Started Usage To use this plugin

JieLiu 4 Dec 15, 2022
A most easily usable Duolingo API wrapper in Dart. Duolingo4D is an open-sourced Dart library.

A most easily usable Duolingo API wrapper in Dart! 1. About Duolingo4D Duolingo4D is an open-sourced Dart library. With Duolingo4D, you can easily int

Kato Shinya 18 Oct 17, 2022
This is just the simplyfied Flutter Plugin use for one of the popular flutter plugin for social media login.

social_media_logins Flutter Plugin to login via Social Media Accounts. Available Social Media Logins: Facebook Google Apple Getting Started To use thi

Reymark Esponilla 3 Aug 24, 2022
Flutter widget library containing buttons for authenticating with popular social networks: Apple, Google, Facebook, Twitter and Microsoft.

Flutter Auth Buttons This library is now in maintenance mode I'm no longer actively using Flutter and don't have the time to keep this library maintai

Duncan Jones 115 Nov 3, 2022
An easy configurable and secure open-source personal password manager.

An easy configurable and secure open-source personal password manager. Anyone can you this project and generate his own personal mobile app. All the passwords will be saved into your own Firebase Firestone database with encryption.

Shudipto Trafder 18 Dec 28, 2022
Help developers build the most beautiful search bar🍹.

fsearch Help developers build the most beautiful search bar ?? . [FSearch] provides developers with a one-stop search bar construction service. Suppor

Fliggy Mobile 70 Oct 28, 2022
Build context - Access most used properties in your BuildContext instance.

Languages: English | Brazilian Portuguse BuildContext Access most used properties in your BuildContext instance. This package relies on Dart's extensi

Pedro Massango 132 Dec 11, 2022
A collection of Flutter Widgets that make multi screen user experiences easy to build

Multi Screen Layout for Flutter A collection of Widgets that make multi screen user experiences easy to build Supported Devices Surface Duo Surface Du

Jason Rai 75 Dec 1, 2022
A most easily usable cookie management library in Dart. With SweetCookieJar, you can easily manage cookie on your application.

A most easily usable cookie management library in Dart! 1. About 1.1. Introduction 1.1.1. Install Library 1.1.2. Import It 1.1.3. Use SweetCookieJar 1

Kato Shinya 9 Oct 27, 2022
A most easily usable cache management library in Dart. With CacheStorage, you can easily manage cache on your application.

A most easily usable cache management library in Dart! 1. About 1.1. Introduction 1.1.1. Install Library 1.1.2. Import It 1.1.3. Use CacheStorage 1.2.

Kato Shinya 1 Dec 13, 2021
A most easily usable RESAS API wrapper in Dart. With this library, you can easily integrate your application with the RESAS API.

A most easily usable RESAS API wrapper library in Dart! 1. About 1.1. What Is RESAS? 1.2. Introduction 1.2.1. Install Library 1.2.2. Import It 1.2.3.

Kato Shinya 2 Apr 7, 2022
A most easily usable JSON wrapper library in Dart

A most easily usable JSON response wrapper library in Dart! 1. About 1.1. Introd

Kato Shinya 2 Jan 4, 2022
A most easily usable improvement rate calculator library in Dart.

A most easily usable improvement rate calculator library in Dart. With ImprovementRate, you can easily calculate improvement rate on your application.

Kato Shinya 1 Dec 27, 2021
A flutter widget to indicate loading progress. Easy to use, easy to extend

?? ?? ?? A flutter widget to indicate loading progress. Easy to use, easy to extend

Manuel Duarte 2 May 30, 2022
Widgets for Digital Health - Use the Flutter(tm) SDK to build healthcare apps fast.

Faiadashu™ FHIRDash — Widgets for Digital Health Mission Build beautiful healthcare apps fast — use the Flutter™ SDK and follow the HL7® FHIR® standar

Tilo 22 Dec 19, 2022