A Flutter widget for inputting content with a fixed length, visually treating each character as a separate segment.

Overview

code_input

A Flutter widget for inputting content with a fixed length, visually treating each character as a separate segment.

Usage

This is a small example:

CodeInput(
  length: 4,
  keyboardType: TextInputType.number,
  builder: CodeInputBuilders.lightCircle(),
  onFilled: (value) => print('Your input is $value.'),
)

For more information about the properties, have a look at the API reference.

LICENSE

Copyright (c) 2018 Marcel Garus & Rahiche Raouf

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Comments
  • Customize appearance of fields

    Customize appearance of fields

    Is there any way to customize the appearance of the fields? For example, I want to remove the border and also change the background color when the field has been filled.

    opened by pkhivesara 8
  • [Bug] When providing a focusNode to CodeInput() an error occurs.

    [Bug] When providing a focusNode to CodeInput() an error occurs.

    I am getting an error for version 1.0.2

    Example code:

    import 'package:code_input/code_input.dart';
    import 'package:flutter/cupertino.dart';
    import 'package:flutter/material.dart';
    
    class PhoneVerificationScreen extends StatefulWidget {
      const PhoneVerificationScreen({Key key}) : super(key: key);
    
      @override
      _PhoneVerificationScreenState createState() =>
          _PhoneVerificationScreenState();
    }
    
    class _PhoneVerificationScreenState extends State<PhoneVerificationScreen> {
      FocusNode _focusNode = FocusNode();
    
      @override
      void initState() {
        super.initState();
    
        // Request focus to the focusNode.
        FocusScope.of(context).requestFocus(_focusNode);
      }
    
      @override
      Widget build(BuildContext context) {
        return Container(
          padding: EdgeInsets.only(left: 25, right: 25),
          child: CodeInput(
            length: 4,
            focusNode: _focusNode, // <-- This causes the error
            keyboardType: TextInputType.number,
            builder: _codeInputBuilder(),
            onFilled: (code) {
              // Verify the code and send user to "dashboard"
            },
          ),
        );
      }
    
      _codeInputBuilder() {
        return CodeInputBuilders.containerized(
          totalSize: Size(60, 50),
          emptySize: Size(50, 50),
          emptyDecoration: BoxDecoration(
            border: Border.all(color: Colors.grey[300]),
            borderRadius: BorderRadius.circular(4),
            color: Color(0xFFF9F9F9),
          ),
          emptyTextStyle: TextStyle(
            fontSize: 20,
            fontWeight: FontWeight.bold,
            color: Colors.pink,
          ),
          filledSize: Size(50, 50),
          filledDecoration: BoxDecoration(
            border: Border.all(color: Colors.red),
            borderRadius: BorderRadius.circular(4),
            color: Colors.white,
          ),
          filledTextStyle: TextStyle(
            fontSize: 20,
            fontWeight: FontWeight.bold,
            color: Colors.pink,
          ),
        );
      }
    }
    
    

    Image

    image

    Log output

    Performing hot reload...
    Syncing files to device Android SDK built for x86...
    I/flutter (16437): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
    I/flutter (16437): The following _CompileTimeError was thrown building PhoneVerificationScreen(dirty, state:
    I/flutter (16437): _PhoneVerificationScreenState#68098):
    I/flutter (16437): 'package:code_input/code_input.dart': error: Not a constant expression: unexpected kernel tag
    I/flutter (16437): ConstructorInvocation (31)
    I/flutter (16437): 
    I/flutter (16437): When the exception was thrown, this was the stack:
    I/flutter (16437): #0      _PhoneVerificationScreenState._buildVerificationInput (package:tjommi/screens/auth/phone_verification.dart:122:9)
    I/flutter (16437): #1      _PhoneVerificationScreenState.build (package:tjommi/screens/auth/phone_verification.dart:102:53)
    I/flutter (16437): #2      StatefulElement.build (package:flutter/src/widgets/framework.dart:3825:27)
    I/flutter (16437): #3      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3739:15)
    I/flutter (16437): #4      Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #5      StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #6      Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #7      SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #8      Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #9      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #10     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #11     StatelessElement.update (package:flutter/src/widgets/framework.dart:3796:5)
    I/flutter (16437): #12     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #13     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #14     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #15     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #16     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #17     RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:4601:32)
    I/flutter (16437): #18     MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4992:17)
    I/flutter (16437): #19     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #20     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #21     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #22     StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #23     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #24     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #25     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #26     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #27     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #28     StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #29     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #30     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #31     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #32     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #33     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #34     StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #35     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #36     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #37     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #38     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #39     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #40     StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #41     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #42     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #43     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #44     StatelessElement.update (package:flutter/src/widgets/framework.dart:3796:5)
    I/flutter (16437): #45     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #46     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #47     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #48     StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #49     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #50     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #51     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #52     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #53     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #54     ProxyElement.update (package:flutter/src/widgets/framework.dart:4006:5)
    I/flutter (16437): #55     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #56     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #57     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #58     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #59     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #60     StatefulElement.update (package:flutter/src/widgets/framework.dart:3894:5)
    I/flutter (16437): #61     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #62     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #63     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #64     StatelessElement.update (package:flutter/src/widgets/framework.dart:3796:5)
    I/flutter (16437): #65     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #66     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:4883:14)
    I/flutter (16437): #67     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #68     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #69     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #70     ProxyElement.update (package:flutter/src/widgets/framework.dart:4006:5)
    I/flutter (16437): #71     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:15)
    I/flutter (16437): #72     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3750:16)
    I/flutter (16437): #73     Element.rebuild (package:flutter/src/widgets/framework.dart:3565:5)
    I/flutter (16437): #74     BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2278:33)
    I/flutter (16437): #75     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:700:20)
    I/flutter (16437): #76     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:286:5)
    I/flutter (16437): #77     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1012:15)
    I/flutter (16437): #78     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:952:9)
    I/flutter (16437): #79     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.scheduleWarmUpFrame.<anonymous closure> (package:flutter/src/scheduler/binding.dart:773:7)
    I/flutter (16437): #81     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:382:19)
    I/flutter (16437): #82     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:416:5)
    I/flutter (16437): #83     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:171:12)
    I/flutter (16437): (elided one frame from package dart:async-patch)
    I/flutter (16437): ════════════════════════════════════════════════════════════════════════════════════════════════════
    Reloaded 23 of 634 libraries in 1 404ms.
    ****
    

    Flutter Doctor

    [√] Flutter (Channel stable, v1.5.4-hotfix.2, on Microsoft Windows [Version 10.0.17134.765], locale nb-NO)
        • Flutter version 1.5.4-hotfix.2 at C:\flutter
        • Framework revision 7a4c33425d (5 weeks ago), 2019-04-29 11:05:24 -0700
        • Engine revision 52c7a1e849
        • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)
    
    
    [√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
        • Android SDK at C:\Android\android-sdk
        • Android NDK location not configured (optional; useful for native profiling support)
        • Platform android-28, build-tools 28.0.3
        • ANDROID_HOME = C:\Android\android-sdk
        • ANDROID_SDK_ROOT = C:\Android\android-sdk
        • Java binary at: C:\Users\Helge Sverre\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\183.5522156\jre\bin\java
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
        • All Android licenses accepted.
    
    [√] Android Studio (version 3.4)
        • Android Studio at C:\Users\Helge Sverre\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\183.5522156
        • Flutter plugin version 36.0.1
        • Dart plugin version 183.6270
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    
    [√] VS Code (version 1.34.0)
        • VS Code at C:\Users\Helge Sverre\AppData\Local\Programs\Microsoft VS Code
        • Flutter extension version 3.0.2
    
    [√] Connected device (1 available)
        • Android SDK built for x86 • emulator-5554 • android-x86 • Android 9 (API 28) (emulator)
    
    • No issues found!
    

    Does anyone have any idea what might be causing this error?

    opened by HelgeSverre 6
  • [FR] Add ability to provide a FocusNode to the CodeInput widget

    [FR] Add ability to provide a FocusNode to the CodeInput widget

    I would like to have the ability to provide a FocusNode to the CodeInput widget So that we can trigger focus on the code input from outside without the user having to interact with it.

    This would be useful for login screens where the user is redirected to a code input screen and you want the code input to get focus automatically.

    If anyone knows of a workaround, id love some input.

    enhancement 
    opened by HelgeSverre 4
  • Release

    Release

    Hey Rahiche,

    I completely rewrote the code. Now, a custom builder is accepted which is called for every character. Also, only one FocusNode and EditableText is used internally, so stuff like swiping on the space bar to move the cursor or holding the back button for deletion of everything works. Just run the example app you'll see how it works. Here's a video of it.

    These are breaking changes, so I bumped the version to 1.0.0. That means library users won't break their app if they specified the version with ^xxx.

    I also added an example, cleaned the API reference and improved a lot of other stuff like the pubspec, readme and license. The video of the widget in the readme still needs to be updated tho.

    Happy weekend Marcel

    opened by MarcelGarus 4
  • Request for 'Obscure text' feature

    Request for 'Obscure text' feature

    Thanks to Rahiche created CodeInput, very appreciate. Btw I'm here to requesting the feature of 'obscure text', that's quick important for someone to implement 'passcode unlock' behavior.

    enhancement 
    opened by dante-teo 2
  • [Proposal] Add onDone callback

    [Proposal] Add onDone callback

    I propose to add onDone callback, because users can click "done" on the screen keyboard to submit code, but actually this button doen't do nothing.

    This will be useful if want to allow the code to be corrected before submitting.

    @marcelgarus

    opened by 0xdecade 1
  • When you run the application in Arabic, the order of the numbers is reversed

    When you run the application in Arabic, the order of the numbers is reversed

    When you run the application in Arabic, the order of the numbers is reverse

    https://user-images.githubusercontent.com/41663994/168916497-d05e878c-37d1-478a-a984-802162036733.mp4

    d

    opened by saifamer2030 0
  • text not clearing when SetState Rebuilding

    text not clearing when SetState Rebuilding

    I am using timer in my code, that's why i have to call SetState every second, but problem is that The text does not clear until the timer stops, when timer stops it work fine like I can add text and clear it, but when I Start my timer I can add text but can't delete it.

    https://drive.google.com/file/d/10jd4Y-cFddBP7k9TgENgKyoyfPJc65cx/view?usp=sharing

    opened by jaydip-pawar 1
  • Compiler error - Container backgroundCursorColor property unknown

    Compiler error - Container backgroundCursorColor property unknown

    I'm using code_input with flutter:

    Flutter 1.0.0 • channel stable • https://github.com/flutter/flutter.git Framework • revision 5391447fae (3 months ago) • 2018-11-29 19:41:26 -0800 Engine • revision 7375a0f414
    Tools • Dart 2.1.0 (build 2.1.0-dev.9.4 f9ebf21297)

    After including the package and try to build I get this error: ( I just copied the example code into my app) If I comment the backgroundCursorColor property it doesn't crash.

    Compiler message: file:///C:/instal/flutter/.pub-cache/hosted/pub.dartlang.org/code_input-1.0.1/lib/code_input.dart:162:13: Error: No named parameter with the name 'backgroundCursorColor'. backgroundCursorColor: Colors.black, ^^^^^^^^^^^^^^^^^^^^^ file:///C:/instal/flutter/packages/flutter/lib/src/widgets/editable_text.dart:1: Context: Found this candidate, but the arguments don't match. Compiler failed on D:\projects\flow_me\lib\main.dart ********************************************************* WARNING: This version of url_launcher will break your Android build if it or its dependencies aren't compatible with AndroidX. See https://goo.gl/CP92wY for more information on the problem and how to fix it. This warning prints for all Android build failures. The real root cause of the error may be unrelated. ********************************************************* Finished with error: Gradle task assembleDebug failed with exit code 1

    bug 
    opened by exilonX 0
Owner
Raouf Rahiche
Raouf Rahiche
A customizable listview with A-Z side scrollbar to fast jump to the item of the selected character

A customizable listview with A-Z side scrollbar to fast jump to the item of the selected character

Liew Jun Tung 81 Sep 21, 2022
A customizable listview with A-Z side scrollbar to fast jump to the item of the selected character.

A customizable listview with A-Z side scrollbar to fast jump to the item of the selected character. Quick scroll through list via dragging through alphabets.

Hussain Al Lawati 1 Apr 3, 2022
A simple zoomable image/content widget for Flutter.

?? Easy to use yet very customizable zoomable image widget for Flutter, Photo View provides a gesture sensitive zoomable widget. Photo View is largely used to show interacive images and other stuff such as SVG.

Blue Fire 1.7k Jan 1, 2023
A sliding up panel widget which can be used to show or hide content, beautiful and simple.

flutter_sliding_up_panel A sliding up panel widget which can be used to show or hide content, beautiful and simple. demo Getting Started dependencies:

null 25 Dec 12, 2022
A simple Flutter widget to add in the widget tree when you want to show nothing, with minimal impact on performance.

nil A simple widget to add in the widget tree when you want to show nothing, with minimal impact on performance. Why? Sometimes, according to a condit

Romain Rastel 127 Dec 22, 2022
A flutter carousel widget, support infinite scroll, and custom child widget.

carousel_slider A carousel slider widget. Features Infinite scroll Custom child widgets Auto play Supported platforms Flutter Android Flutter iOS Flut

Bart T 1 Nov 25, 2021
A Flutter Widget to make interactive timeline widget.

Bubble Timeline Package A Flutter Widget to make interactive timeline widget. This widget can be used to make Event Timelines, or Timelines for certai

Vansh Goel 12 Sep 22, 2022
📸 Easy to use yet very customizable zoomable image widget for Flutter, Photo View provides a gesture sensitive zoomable widget.

?? Easy to use yet very customizable zoomable image widget for Flutter, Photo View provides a gesture sensitive zoomable widget. Photo View is largely used to show interacive images and other stuff such as SVG.

Blue Fire 1.7k Jan 7, 2023
A widget lib that the widget in this lib can react to flutter ScrollController's offset

Language: English | 中文简体 linked_scroll_widgets A lib full of widgets that can react to the scrollController's offset change,to custom your UI effect.

WenJingRui 8 Oct 16, 2022
Full customable rolling switch widget for flutter apps based on Pedro Massango's 'crazy-switch' widget

lite_rolling_switch Full customable rolling switch widget for flutter apps based on Pedro Massango's 'crazy-switch' widget https://github.com/pedromas

Eduardo Muñoz 48 Dec 1, 2022
Progress Dialog widget for flutter projects with ability to customize loading widget, background color and background blur.

DISCONTINUED Checkout ArsDialog ars_progress_dialog Customizable progress dialog for Flutter applications with smooth animation for background dim col

Arsam 8 Apr 15, 2022
A Flutter widget that will give a Glitch Animation Effect to it's child widget.

GlitchEffect A Flutter widget that will give a Glitch Animation Effect to it's child widget. Installation Add the latest version of package to your pu

Sameer Singh 6 Nov 25, 2022
Widget, that can make any static located widget hidable

Installing See the official installing guidline from hidable/install Usage & Overview To start using Hidable widget, we have to create a ScrollControl

Anon 18 Dec 16, 2022
A widget that allow user resize the widget with drag

Flutter-Resizable-Widget A widget that allow user resize the widget with drag Note: this widget uses Getx Example bandicam.2021-11-11.12-34-41-056.mp4

MohammadAminZamani.afshar 22 Dec 13, 2022
Flutter Carousel Pro - A Flutter Carousel widget

Carousel Extended A Flutter Carousel widget. Usage As simple as using any flutter Widget. Based on Carousel Pro but extended to be able to navigate be

omid habibi 3 Dec 7, 2020
🟥 A flutter widget that flashes when flutter fails to render a frame in a certain timeframe

?? A flutter widget that flashes when flutter fails to render a frame in a certain timeframe

Andrei Lesnitsky 32 Oct 8, 2022
React hooks for Flutter. Hooks are a new kind of object that manages a Widget life-cycles. They are used to increase code sharing between widgets and as a complete replacement for StatefulWidget.

English | Português Flutter Hooks A Flutter implementation of React hooks: https://medium.com/@dan_abramov/making-sense-of-react-hooks-fdbde8803889 Ho

Remi Rousselet 2.6k Dec 29, 2022
A credit card widget for Flutter application.

A credit card widget for Flutter application.

Simform Solutions 281 Dec 27, 2022
A simple Flutter widget library that helps us to select days in a week.

A simple Flutter widget library that helps us to select days in a week.

Shan Shaji 4 Oct 9, 2022