How it works
- Install Open Blabber and enable the keyboard in Settings → General → Keyboard → Keyboards, including Allow Full Access.
- In any app, switch to the Open Blabber keyboard and tap its center button. If the engine is not ready, the keyboard opens Open Blabber. The local model prepares before the microphone starts. Use iOS's Back control to return.
- Tap the center mic, talk, and tap it again to stop. Live text and a voice-activity animation appear while you speak. Each dictation stops at two minutes. Leaving or switching keyboards asks the app to shut down.
The bundled Moonshine Tiny Streaming English model runs in the companion app. The keyboard receives control messages, progress, bounded text, and a normalized activity level, but no audio.
Why it is built this way
One way to keep a voice keyboard small is to send recordings to a transcription service. Open Blabber runs transcription on the phone instead. The app takes up more space, but speech stays local and there is no account or API key.
iOS does not let custom keyboard extensions use the microphone, even with Full Access. Apple does not publish a fixed extension memory limit, but keyboards run under a tight system-managed budget. The seven model files already occupy about 49 MiB (51 MB) before inference working memory, so the model runs in the companion app.
The companion app handles the microphone, model, and transcription session. It exchanges commands, state, progress, text, and voice activity with the keyboard through protected App Group files. Audio samples and model objects stay out of the keyboard process.
Open Blabber includes Moonshine Tiny Streaming for English only. More languages would require more language-specific files or a broader model. Larger English models can perform better on difficult speech, but their model files are bigger. Tiny Streaming keeps the bundled model smaller and updates text as you speak, at the cost of some accuracy and language coverage.
Limitations
- On the first dictation, Open Blabber may open while it prepares the model and microphone. iOS cannot silently return to the app you were using, and it may reject the keyboard's launch request. Use the system Back control or app switcher. If the launch fails, open Open Blabber yourself.
- The orange microphone indicator may stay visible during the return handoff and while the Open Blabber keyboard is present. Switching keyboards requests shutdown immediately. If iOS misses that callback, the heartbeat expires about three seconds later.
- Open Blabber is for dictation, not ordinary letter-by-letter typing. Switch keyboards when you need a full keyboard.
- The compact model may mishear names, specialized terms, unclear speech, overlapping speakers, and speech in noisy rooms. Partial text may change as the model hears more context. Review important text before sending it.
- Each recording stops at two minutes. An interruption, memory pressure, or system termination can also end a session. Local transcription uses the device's processor, memory, and battery. The project does not yet have performance and battery benchmarks for every supported iPhone.
Privacy Policy
Effective date: July 21, 2026
Open Blabber processes audio and text on your device. To move a transcript from the companion app to its keyboard, it briefly stores a small amount of device-local data. The bundled English model does not need a transcription server or a first-use download. Once the keyboard inserts text, the app you are typing in controls what happens to it.
What leaves your device
Open Blabber does not send your voice, transcript, or nearby text to its developer or a transcription service. It has no backend or user accounts and includes no analytics, crash reporter, or advertising SDK. Transcription makes no network requests. After insertion, the host app handles the text under its own privacy policy. External website and source-code links open outside the transcription path and are governed by the destination's privacy policy.
Your voice and your text
- Moonshine Voice runs the bundled English model on your device. Open Blabber does not send audio or transcription results to us or to another transcription service.
- When Open Blabber opens, it prepares the model and activates the microphone. The microphone remains available during the return handoff and while the Open Blabber keyboard is present. Switching keyboards requests shutdown immediately. If iOS misses the lifecycle callback, the heartbeat expires about three seconds later.
- Moonshine receives audio only after you tap the center mic. It processes bounded chunks in memory, and each recording stops at two minutes. Open Blabber never writes or logs audio and does not keep a complete recording. The keyboard receives state, progress, bounded text, and normalized activity instead of audio samples.
- The app writes a finished transcript to a temporary file in the protected App Group container. It becomes invalid after two minutes. Cleanup removes it after the keyboard handles it, when the session shuts down, after it expires while the app is running, or on the next app launch. If removal cannot finish immediately, later app activity retries it. Random request identifiers and short-lived engine state help prevent delivery to the wrong text field.
- To avoid inserting a result into the wrong field, the keyboard computes a short fingerprint from nearby cursor and selection context. It also checks the preceding character for natural spacing. The context is used only in memory and is not retained.
Permissions we ask for, and why
- Microphone. The companion app needs microphone access for dictation. It activates the microphone after the model is ready and releases it when the keyboard leaves or the return handoff expires. Audio reaches the model only while you are actively dictating.
- Allow Full Access. This lets the keyboard write commands, liveness messages, and result receipts to the shared App Group. Apple also treats Full Access as permission for a keyboard to use networking, but Open Blabber's keyboard contains no networking code and transcription makes no network requests. Full Access does not give the keyboard microphone access. iOS may decline a request to open the companion app, in which case you can open Open Blabber yourself.
Bundled English model
Open Blabber supports English transcription only. Seven quantized Moonshine Tiny Streaming files, totaling about 49 MiB (51 MB), ship with the app. Transcription therefore works offline on the first launch. Other languages would require more language-specific files or a broader model. The companion app owns the model and microphone, while the keyboard extension contains neither. Moonshine Voice and the English model use the MIT license. Open Blabber uses GPLv3.
Changes
We will post policy changes here and in the public source repository and update the effective date. Open Blabber currently has no account system or telemetry. If that changes, this policy will say so.
Contact
Questions about this policy can be filed in the public issue tracker.
Terms of Use
Effective date: July 20, 2026
By using Open Blabber, you agree to these terms.
The app
Open Blabber is free software provided in the hope that it is useful. You may use it for any lawful purpose. Transcription accuracy is not guaranteed. Review dictated text before sending anything important.
Open source license
Open Blabber's source code is licensed under the GNU General Public License v3.0. You are free to inspect, modify, and redistribute it under the terms of that license, which requires that derivative works remain open source. The Moonshine Voice dependency and bundled English model have their own MIT license.
No warranty
The app 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 non-infringement. In no event shall the authors be liable for any claim, damages, or other liability arising from the use of the app. Your only remedy for dissatisfaction with the app is to stop using it.
Governing law
These terms are governed by the laws of the United States and the state in which the developer resides, without regard to conflict-of-law principles.
More from the maker
OpenFret is a free web app for guitarists. It includes gear and practice tracking, a tuner, and Guitar Quest, which uses your real guitar to teach the fretboard.