KeyboardKit 10.2

Jan 9, 2026  ·  releases dictation experiments settings

KeyboardKit 10.2 is out! This release adds a new dictation engine and new settings, as well as bug fixes and improvements.

Blog header image

🎤 Dictation

KeyboardKit 10.2 has a new .keyboard dictation method that makes it possible to perform dictation directly within the keyboard, with an automated app-sync only when needed.

In-keyboard dictation method will only open the main app to start dictation if needed, then navigate back to the keyboard to perform dictation, keeping an open connection to the dictation engine.

In-keyboard dictation screenshot

In-keyboard dictation is currently opt-in. Follow the dictation developer guide to set up dictation, then enable keyboard dictation with the dictation settings or the .keyboardDictation experiment.

In-keyboard dictation is the recommended dictation method moving forward. It has new views that provide a great user experience, like Dictation.ProgressView and Dictation.VolumeVisualizer.

The Dictation feature also has new tools like the new Dictation.VolumeRecorder. KeyboardKit Pro unlocks all required tools to easily set up dictation.

The dictation engine supports the following locales, which means you can use it with languages that are not yet supported by the keyboard engine:

Arabic (ar-SA), Cantonese (yue-CN), Catalan (ca-ES), Chinese (zh-CN), Chinese (zh-HK), Chinese (zh-TW), Croatian (hr-HR), Czech (cs-CZ), Danish (da-DK), Dutch (nl-BE), Dutch (nl-NL), English (en-AE), English (en-AU), English (en-CA), English (en-GB), English (en-ID), English (en-IE), English (en-IN), English (en-NZ), English (en-PH), English (en-SA), English (en-SG), English (en-US), English (en-ZA), Finnish (fi-FI), French (fr-BE), French (fr-CA), French (fr-CH), French (fr-FR), German (de-AT), German (de-CH), German (de-DE), Greek (el-GR), Hebrew (he-IL), Hindi (hi-IN), Hindi (hi-IN-translit), Hindi (hi-Latn), Hungarian (hu-HU), Indonesian (id-ID), Italian (it-CH), Italian (it-IT), Japanese (ja-JP), Korean (ko-KR), Malay (ms-MY), Norwegian Bokmål (nb-NO), Polish (pl-PL), Portuguese (pt-BR), Portuguese (pt-PT), Romanian (ro-RO), Russian (ru-RU), Shanghainese (wuu-CN), Slovak (sk-SK), Spanish (es-419), Spanish (es-CL), Spanish (es-CO), Spanish (es-ES), Spanish (es-MX), Spanish (es-US), Swedish (sv-SE), Thai (th-TH), Turkish (tr-TR), Ukrainian (uk-UA), Vietnamese (vi-VN)

⌨️ Keyboard

KeyboardKit 10.2 adds a new .keyboardReplacementOverlay(...) modifier that can be used to easily replace the keyboard view with an equally sized replacement whenever a boolean condition is met.

🧪 Experiments

Experiment has a new .keyboardDictation experiment that affects the .keyboardMethod dictation setting. You can use this to easily toggle keyboard dictation on and off.

Experiments also has a new Experiments.SettingsScreen that can be used to enable experiments. The KeyboardApp.HomeScreen has a link to this screen, that is hidden by default.

🔉 Feedback

The FeedbackContext class has a new isHapticFeedbackAvailable property, which is only true for devices with haptic feedback.

🎛️ Settings

There are many new settings, like the new isCharacterPreviewEnabled and isPredictiveTextEnabled keyboard settings, and isNextCharacterPredictionEnabled autocomplete setting.

The various settings screens have new toggles and structures, to make them provide more options.

Conclusion

KeyboardKit 10.2 adds many new features and improvements. There are also a bunch of bug fixes and general improvements. For more info, please see the KeyboardKit 10.2 release notes.

Discussions & More

If you found this interesting, please share your thoughts on Bluesky and Mastodon. Make sure to follow to be notified when new content is published.