Flutter Gems is a curated list of 7250+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Keyboard packages
Last updated: May 18, 2026
Managing the on-screen software keyboard is one of the most frustrating aspects of mobile development. Proper keyboard handling prevents UI overlap and ensures input fields remain visible.
Best Practices for Keyboard Management
- Keyboard Overlap: Always wrap forms in a
SingleChildScrollView. When the keyboard appears, Flutter will automatically scroll the focused input field into view rather than letting the keyboard obscure it. - Dismiss on Tap: Implement logic (like wrapping your
Scaffoldin aGestureDetector) that automatically unfocuses the keyboard when the user taps anywhere outside a text input field. - Custom Keyboards: If your app requires specialized input (like a custom math formula pad or an internal PIN pad), build a custom widget rather than trying to hack the OS software keyboard.
The complete list of Keyboard Utilities, Keyboard Visibility detectors, and Custom Keyboard packages is provided below.
flutter_keyboard_visibility
👍 1.14K ⬇️ 750.1K
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin for discovering the state of the soft-keyboard visibility on Android and iOS.
keyboard_actions
👍 1.18K ⬇️ 130.3K
Dart 3 compatibleMaintenance Status: Good
Now you can add features to the Android / iOS keyboard in a very simple way.
keyboard_dismisser
👍 245 ⬇️ 18.2K
Dart 3 compatibleMaintenance Status: Poor
A simple Flutter package to hide the keyboard when performing a gesture outside of it.
math_keyboard
👍 148 ⬇️ 5.9K
Dart 3 compatibleMaintenance Status: Good
Math expression editing using an on-screen software keyboard or physical keyboard input in a typeset input field in Flutter.
keyboard_attachable
👍 119 ⬇️ 3K
Dart 3 compatibleMaintenance Status: Poor
A Flutter package to build widgets that can be attached to the soft keyboard.
numeric_keyboard
👍 94 ⬇️ 805
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin to display a simple numeric keyboard on Android & iOS.
flutter_keyboard_size
👍 67 ⬇️ 31K
Dart 3 compatibleMaintenance Status: Poor
A straightforward and convenient provider that helps get info about - keyboard height, is it open or not, set bool value is screen small or not.
number_pad_keyboard
👍 88 ⬇️ 109
Dart 3 compatibleMaintenance Status: Average
A Flutter package that provides a customizable number pad keyboard for entering PIN codes or numeric input. It includes features such as custom styling for numbers and buttons.
virtual_keyboard_multi_language
👍 74 ⬇️ 2.4K
Dart 3 compatibleMaintenance Status: Average
A simple package for dispaying virtual keyboards on a devices like kiosks and ATMs. The library is written in Dart and has no native code dependancy.
focusable_control_builder
👍 52 ⬇️ 2.4K
Dart 3 compatibleMaintenance Status: Good
Easily create custom controls that respond correctly to mouse and keyboard.
custom_pin_screen
👍 49 ⬇️ 273
Dart 3 compatibleMaintenance Status: Average
A flutter package to add screens with custom keyboards and pins to your mobile application.
keyboard_service
👍 43 ⬇️ 1.3K
Dart 3 compatibleMaintenance Status: Good
Keyboard visibility / (auto-) dismiss package without the need of native plugin
cupertino_interactive_keyboard
👍 42 ⬇️ 968
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin intended to achieve native iOS interactively dismissible keyboard.
keyboard_height_plugin
👍 31 ⬇️ 12.9K
Dart 3 compatibleMaintenance Status: Good
Flutter plugin that emits keyboard height before it shows (ios/android)
keyboard_detection
👍 29 ⬇️ 12K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to easily detect keyboard visibility using the bottom view inset.
flutter_dialpad
👍 37 ⬇️ 302
Dart 3 compatibleMaintenance Status: Poor
A phone dialer widget that can be added to any Flutter Application to enable ability to dial a number. This could be combined with a voip application to enable placing calls.
input_with_keyboard_control
👍 35 ⬇️ 335
Dart 3 compatibleMaintenance Status: Poor
The package provides an input that you can control whether the keyboard will show or not without losing focus, ideal for use with a barcode scanner!
flutter_secure_keyboard
👍 35 ⬇️ 253
Dart 3 compatibleMaintenance Status: Average
Mobile secure keyboard to prevent KeyLogger attack and screen capture.
keymap
👍 34 ⬇️ 1.1K
Dart 3 compatibleMaintenance Status: Poor
A reusable keyboard shortcuts widget with a flexible, minimal UI and focus handling.
flutter_persistent_keyboard_height
👍 33 ⬇️ 54
Dart 3 compatibleMaintenance Status: Poor
Flutter package to get keyboard height. Can be used to display a sticker/emoji modal with correct height.
flutter_interactive_keyboard
👍 33 ⬇️ 39
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin to dismiss the keyboard interactively similar to the IOS native behavior. On Android the functionality is mimed without drag.
gamepads
👍 32 ⬇️ 566
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to handle gamepad input across multiple platforms.
emoji_keyboard_flutter
👍 32 ⬇️ 489
Dart 3 compatibleMaintenance Status: Good
A Flutter package that provides keyboard where you can only type with emojis!
keyboard_event
👍 29 ⬇️ 144
Dart 3 compatibleMaintenance Status: Poor
Keyboard event plugin for Flutter Desktop(Windows)
artistic_multilingual_keyboards
👍 29 ⬇️ 61
Dart 3 compatibleMaintenance Status: Poor
A fully customizable Flutter package which allows you to add multi lingual keyboard in your apps. For now you can use English, Urdu and Sindhi keyboards.
pin_keyboard
👍 28 ⬇️ 581
Dart 3 compatibleMaintenance Status: Poor
A Pin Keyboard Flutter package, Make it easy to use and minimal code.
avoid_keyboard
👍 26 ⬇️ 887
Dart 3 compatibleMaintenance Status: Poor
This package enables convenient keyboard avoidance. It can be used to enable keyboard avoidance for specific view regions, without compressing the entire view.
flutter_onscreen_keyboard
👍 24 ⬇️ 2K
Dart 3 compatibleMaintenance Status: Good
A customizable and extensible virtual keyboard widget for Flutter desktop and touchscreen apps.
numpad_layout
👍 24 ⬇️ 364
Dart 3 compatibleMaintenance Status: Poor
A new Flutter Package for numeric Keyboard with flexible customization as well as arabic digits support and many many more.
vk
👍 18 ⬇️ 16
Dart 3 compatibleMaintenance Status: Poor
Redesigned virtual keyboard for dart + flutter, forked from virtual keyboard
new_virtual_keyboard
👍 8 ⬇️ 1.5K
Dart 3 compatibleMaintenance Status: Poor
A simple package for dispaying virtual keyboards on a devices like kiosks and ATMs. The library is written in Dart and has no native code dependancy.
fulde_keyboard
👍 7 ⬇️ 63
Dart 3 compatibleMaintenance Status: Good
A modern, beautiful virtual keyboard package for Fulde language with multi-language support (Fulde, Latin, English). Features modern UI design, haptic feedback, accessibility support, and smooth animations.
windows_ime_manager
👍 4 ⬇️ 14
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin for managing Input Method Editors (IME) on Windows, supporting seamless switching between different languages.
passwordgrid
👍 1 ⬇️ 6
Dart 3 compatibleMaintenance Status: Average
Flutter Package to generate passwordgrid. This package supports iOS, Android, MacOS and web.
keyboard_visibility
👍 122 ⬇️ 96
Maintenance Status: Poor
Flutter plugin for discovering the state of the soft-keyboard visibility on Android and iOS.
keyboard_shortcuts
👍 47 ⬇️ 24
Maintenance Status: Poor
Widget that allow you to use shortcuts for your application. Custom shortcuts that you define by yourself and global like auto scroll to bottom and top.
chat_pickers
👍 36 ⬇️ 44
Maintenance Status: Poor
A new Flutter package for displaying a keyboard for using emojis/gifs.
virtual_keyboard
👍 27 ⬇️ 14
Maintenance Status: Poor
A simple package for dispaying virtual keyboards on a devices like kiosks and ATMs. The library is written in Dart and has no native code dependancy.
sk_numberpad
👍 18 ⬇️ 8
Maintenance Status: Poor
Fast and easy to use custom number pad library for Flutter
