Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

react-native-keyboard-controller

kirillzyusko1.1mMIT1.18.5TypeScript support: included

Keyboard manager which works in identical way on both iOS and Android

react-native, keyboard, interactive, dismiss, animation, focused input, text changed, selection changed, avoiding view, avoid keyboard, sticky view, over keyboard view, keyboard background view, keyboard aware scroll view, keyboard toolbar, keyboard done button, keyboard next button, keyboard previous button, extend keyboard, ios, android

readme

react-native-keyboard-controller

A universal keyboard handling solution for React Native — lightweight, fully customizable, and built for real-world apps. Smooth animations, consistent behavior on both iOS and Android, with a developer-oriented design.

Key features

  • 🧬 Map keyboard movement to animated values
  • 🧪 keyboardWillShow / keyboardWillHide events now available on Android
  • 🔮 Change soft input mode on Android
  • ⚡ Preload keyboard to avoid first-time focus lag
  • 🚀 Reanimated support
  • 📱 Interactive keyboard dismissing 👆📱
  • 📚 Prebuilt components (KeyboardStickyView, KeyboardAwareScrollView, reworked KeyboardAvoidingView)
  • 📐 KeyboardToolbar with customizable previous, next, and done buttons
  • 🌐 Display anything over the keyboard (without dismissing it) using OverKeyboardView
  • 🎨 Match keyboard background with KeyboardBackgroundView
  • 🧩 Extend keyboard with custom buttons/UI via KeyboardExtender
  • 📝 Easy retrieval of focused input info
  • 🧭 Compatible with any navigation library
  • ✨ More coming soon... stay tuned! 😊

Installation

Check out the installation section of the docs for detailed setup instructions.

Documentation

Full API reference and guides available at:
https://kirillzyusko.github.io/react-native-keyboard-controller/

Contributing

See the contributing guide to learn how to contribute to the repo and development workflow.

License

MIT