Overview
As you may have noticed, Apple’s native custom keyboard APIs are limited, and forces you to build a lot of things from scratch, including the very keyboard view itself.
KeyboardKit extends Apple’s native APIs and provides you with a lot more functionality. It lets you mimic native iOS keyboards and tweak their style & behavior, or create completely custom ones.
KeyboardKit Pro unlocks more essential features like SystemKeyboard
add-ons, components, etc.
Core Features
The KeyboardInputViewController
is the most essential type in the library. Just make your controller inherit this class to get access to a bunch of additional capabilities.
KeyboardKit also has a Keyboard
namespace with keyboard-related types, like Case
, ReturnKeyType
etc., as well as other essential types like KeyboardContext
and KeyboardBehavior
.
KeyboardKit has a SystemKeyboard
that mimics a native iOS keyboard. It can be used for alphabetic, numeric & symbolic keyboards, supports all supported locales, layouts, callouts, etc.:
SystemKeyboard
automatically adapts for portrait & landscape, iPhone & iPad, can be extended with emoji keyboards and toolbars, and can be styled to great extent:
KeyboardKit Pro adds a lot of functionality to this keyboard, to make it more powerful and flexible.
👑 Pro Features
KeyboardKit Pro unlocks layouts, callouts and services for all locales, to make the SystemKeyboard
support all locales without any additional code.
KeyboardKit Pro also unlocks more features that makes SystemKeyboard
support an EmojiKeyboard
, iPad pro layouts, additional toolbars, etc:
KeyboardKit Pro also unlocks many additional view components, like a toggle toolbar, a collapsed keyboard banner, etc.
Documentation
The information on this page is shortened to be easier to overview. For more information about this feature, code samples, etc. please see the online documentation.
Read more
Essentials
KeyboardKit provides essential features, utilities & views.
Actions
KeyboardKit makes it easy to trigger keyboard-related actions
AI Support
KeyboardKit has features that are needed for AI.
App
KeyboardKit has app-specific screens & views.
Autocomplete
KeyboardKit can perform autocomplete.
Callouts
KeyboardKit can show input & secondary action callouts.
Colors
KeyboardKit defines keyboard-specific colors.
Device Utilities
KeyboardKit has device-specific utilities.
Dictation
KeyboardKit can perform dictation from the keyboard.
Emojis
KeyboardKit defines emojis, categories, skin tones, etc.
External Keyboards
KeyboardKit Pro can detect if an external keyboard is being used.
Feedback
KeyboardKit can trigger audio & haptic feedback.
Gestures
KeyboardKit has a customizable keyboard gesture engine.
Host
KeyboardKit can identify the host application.
Images
KeyboardKit defines keyboard-specific images.
Layout
KeyboardKit has customizable input sets & keyboard layouts.
Localization
KeyboardKit supports 60+ locales and languages.
Navigation
KeyboardKit lets you open urls and apps from the keyboard.
Previews
KeyboardKit has extension keyboard preview support.
Proxy Utilities
KeyboardKit makes your text document proxy do a LOT more.
Settings
KeyboardKit has tools for in-app settings & System Settings.
Status
KeyboardKit detects if a keyboard is enabled, has full access, etc.
Styling
KeyboardKit lets you style your keyboards to great extent.
Text Input
KeyboardKit can input text inside the keyboard extension itself.
Themes
KeyboardKit can use themes to style keyboards in flexible ways.