From 36da42a79465b30b2994affd3958e9041bc78b57 Mon Sep 17 00:00:00 2001 From: Tobias Leinss <7684178+leinss@users.noreply.github.com> Date: Wed, 26 Aug 2026 16:36:16 +0200 Subject: [PATCH] content: TobiBoard runs its AI on-device, and it was never submitted to IzzyOnDroid The site described both AI features as bring-your-own-key only. They have defaulted to the on-device engines for a while: Parakeet TDT 0.6B through sherpa-onnx for dictation, Qwen 2.5 through MediaPipe for text fix, with cloud providers as the opt-in alternative. Reframed across the project page, both language versions of the Gboard comparison, the app tagline, llms.txt, /now and /uses, and noted the honest cost (a few hundred megabytes per model, and a phone is slower than a datacentre). Also removed the project page's claim that an IzzyOnDroid inclusion request was submitted and in review. It was never submitted: the release APK is roughly four times their per-app size limit and the bundled speech and LLM runtimes are prebuilt binaries they do not accept. Replaced with a note on why the app ships outside F-Droid's main repository. --- public/llms.txt | 2 +- src/consts.ts | 2 +- .../blog/de/tobiboard-vs-gboard/index.md | 18 ++++++++++-------- .../blog/en/tobiboard-vs-gboard/index.md | 18 ++++++++++-------- src/content/projects/TobiBoard/index.md | 19 ++++++++++--------- src/content/staticPages/now.md | 6 +++--- src/content/staticPages/uses.md | 5 +++-- 7 files changed, 38 insertions(+), 32 deletions(-) diff --git a/public/llms.txt b/public/llms.txt index 7bbb46758..99d79c834 100644 --- a/public/llms.txt +++ b/public/llms.txt @@ -5,7 +5,7 @@ The apps below are all local-first: data stays on your device by default, and any AI feature is optional and uses a key you bring yourself. App URLs point to on-site project pages (source repositories are private except where noted). ## Apps -- [TobiBoard](https://leinss.xyz/projects/TobiBoard/) (Android): on-device keyboard with optional BYOK AI voice-to-text and text fixing. Open source. +- [TobiBoard](https://leinss.xyz/projects/TobiBoard/) (Android): keyboard whose AI voice-to-text and text fixing run on-device by default, with no account or API key; cloud providers are opt-in via your own key. Open source. - [TobiReader](https://leinss.xyz/projects/TobiReader/) (Android): local-first RSS/Atom reader with on-device read-aloud, optional AI summaries, and self-hosted sync. - [TobiRecord](https://leinss.xyz/projects/TobiRecord/) (macOS · Windows · Linux): open-source screen recorder and editor with auto-zoom, cursor polish and styled frames. - [TobiVoice](https://leinss.xyz/projects/TobiVoice/) (macOS): native voice-to-text that transcribes on-device: local models by default, with meeting summaries, read-aloud and optional cloud providers. diff --git a/src/consts.ts b/src/consts.ts index a1b9e8448..aaf7545a6 100644 --- a/src/consts.ts +++ b/src/consts.ts @@ -28,7 +28,7 @@ export const APPS: App[] = [ { name: "TobiBoard", tagline: - "On-device Android keyboard with optional bring-your-own-key AI voice-to-text and text fix.", + "Android keyboard whose AI voice-to-text and text fix run on the device, no account or API key.", platform: "Android", slug: "TobiBoard", }, diff --git a/src/content/blog/de/tobiboard-vs-gboard/index.md b/src/content/blog/de/tobiboard-vs-gboard/index.md index 5fddd40e8..5b9700383 100644 --- a/src/content/blog/de/tobiboard-vs-gboard/index.md +++ b/src/content/blog/de/tobiboard-vs-gboard/index.md @@ -1,12 +1,12 @@ --- title: "TobiBoard vs. Gboard: Ein Tastatur-Vergleich mit Fokus auf Datenschutz" -description: "Wie sich TobiBoard, eine quelloffene On-Device-Android-Tastatur, bei Datenschutz, Datensammlung, KI-Funktionen und Kontrolle gegen Gboard schlägt." +description: "Wie sich TobiBoard, eine quelloffene Android-Tastatur mit KI direkt auf dem Gerät, bei Datenschutz, Datensammlung, KI-Funktionen und Kontrolle gegen Gboard schlägt." date: "Jul 4 2026" tags: ["tobiboard", "gboard", "android", "datenschutz", "tastatur"] lang: "de" --- -> **Kurz gesagt:** Gboard ist ausgefeilt und tief in Googles Ökosystem verwoben; TobiBoard ist quelloffen, hält deine Eingaben auf dem Gerät und sendet niemandem Telemetrie. Beide tippen offline. Der echte Unterschied ist Kontrolle: Gboard ist Closed-Source-Software eines Werbekonzerns, während TobiBoard kein Konto, kein Backend hat und KI nur dann ergänzt, wenn du dich mit deinem eigenen API-Schlüssel dafür entscheidest. Genau dafür habe ich TobiBoard gebaut. +> **Kurz gesagt:** Gboard ist ausgefeilt und tief in Googles Ökosystem verwoben; TobiBoard ist quelloffen, hält deine Eingaben auf dem Gerät und sendet niemandem Telemetrie. Beide tippen offline. Der echte Unterschied ist Kontrolle: Gboard ist Closed-Source-Software eines Werbekonzerns, während TobiBoard kein Konto, kein Backend hat und sogar Spracherkennung und Textkorrektur auf deinem Telefon rechnet. Genau dafür habe ich TobiBoard gebaut. Ich pflege [TobiBoard](/projects/TobiBoard/) selbst, bin also nicht neutral, aber ich halte den Vergleich fair. Gboard ist eine wirklich gute Tastatur. Die Frage ist, was du dafür eintauschst. @@ -18,7 +18,7 @@ Ich pflege [TobiBoard](/projects/TobiBoard/) selbst, bin also nicht neutral, abe | Telemetrie | Keine, kein Backend | Sendet Nutzungsdaten an Google | | Konto | Keins | Google-Ökosystem | | Alltags-Tippen | On-Device, offline | On-Device + Google-Dienste | -| KI-Funktionen | Optional, eigener Schlüssel | Googles, standardmäßig an | +| KI-Funktionen | Standardmäßig auf dem Gerät, Cloud optional mit eigenem Schlüssel | Googles, in Googles Cloud | | Kosten | Kostenlos | Kostenlos | | Bezugsquelle | GitHub, Obtainium, selbst gehostetes F-Droid | Play Store / vorinstalliert | | Am besten für | Kontrolle und Datenschutz | Bequemlichkeit, Google-Integration | @@ -33,18 +33,20 @@ TobiBoard erbt das von [HeliBoard](https://github.com/Helium314/HeliBoard) (AOSP **Quelle und Telemetrie.** Gboard ist Closed Source und stammt von Google. Es sendet Nutzungsdaten zurück, um Modelle und Dienste zu verbessern. TobiBoard ist GPL-3.0, hat überhaupt kein Backend und sammelt nichts: es gibt keinen Server, an den deine Daten gehen könnten. -**KI, und wer den Schlüssel hält.** Gboards smarte Funktionen laufen über Google. TobiBoard liefert **zwei optionale KI-Helfer, die standardmäßig aus sind**: +**KI, und wo sie rechnet.** Gboards smarte Funktionen laufen über Google. TobiBoard liefert **zwei KI-Helfer, die auf dem Telefon selbst rechnen**: -- **Voice-to-Text**: Return lang drücken, aufs Mikro tippen, sprechen; deine Worte kommen als sauberer Text zurück. -- **Text Fix**: groben Text markieren, Fix drücken, eine saubere Version in derselben Sprache erhalten. +- **Voice-to-Text**: Return lang drücken, aufs Mikro tippen, sprechen; deine Worte kommen als Text zurück. Die Erkennung läuft lokal auf Parakeet TDT 0.6B über [sherpa-onnx](https://github.com/k2-fsa/sherpa-onnx) und erkennt Deutsch, Englisch, Spanisch und Französisch automatisch. +- **Text Fix**: groben Text markieren, Fix drücken, eine saubere Version in derselben Sprache erhalten. Läuft lokal auf Qwen 2.5 über MediaPipe. -Beide laufen nur, wenn du deinen eigenen [OpenRouter](https://openrouter.ai/)- oder [PayPerQ](https://ppq.ai/)-Schlüssel hinterlegst, und OpenRouter-Routen sind standardmäßig ohne Datenspeicherung. Nichts erreicht die Cloud, bevor du dich dafür entscheidest, und selbst dann geht es an einen Anbieter, den *du* gewählt hast, nicht an mich und nicht an Google. +Kein Konto, kein API-Schlüssel, und Diktieren funktioniert im Flugmodus. Der Preis dafür gehört genannt: jedes Modell ist ein einmaliger Download von einigen hundert Megabyte, und ein Telefon ist langsamer als ein Rechenzentrum. + +Wenn du lieber ein Cloud-Modell nutzt, ist genau das die bewusste Entscheidung: hinterlege deinen eigenen [OpenRouter](https://openrouter.ai/)- oder [PayPerQ](https://ppq.ai/)-Schlüssel, dann laufen die KI-Funktionen dort, bei OpenRouter standardmäßig ohne Datenspeicherung. So oder so geht es an einen Anbieter, den *du* gewählt hast, nicht an mich und nicht an Google. **Wie du es installierst.** Gboard kommt aus dem Play Store oder vorinstalliert. TobiBoard kommt am Store vorbei: Hol dir das [APK von GitHub Releases](https://github.com/leinss/TobiBoard/releases/latest), richte [Obtainium](https://github.com/ImranR98/Obtainium) auf das Repo für automatische Updates, oder füge das selbst gehostete F-Droid-Repo unter [leinss.xyz/TobiBoard/repo](https://leinss.xyz/TobiBoard/repo) hinzu. ## Was solltest du wählen? - **Bei Gboard bleiben**, wenn du dich in Googles Ökosystem wohlfühlst und die ausgefeilteste, funktionsreichste Tastatur ohne Einrichtung willst. -- **Zu TobiBoard wechseln**, wenn deine Eingaben dir gehören sollen: quelloffen, keine Telemetrie, kein Konto und KI, die nur auf deinem eigenen Schlüssel läuft, wenn du sie anforderst. +- **Zu TobiBoard wechseln**, wenn deine Eingaben dir gehören sollen: quelloffen, keine Telemetrie, kein Konto und KI, die auf deinem eigenen Telefon rechnet statt auf fremden Servern. TobiBoard ist Open Source: lies den Code, bau es selbst oder meld ein Issue: [github.com/leinss/TobiBoard](https://github.com/leinss/TobiBoard). Wenn Datenschutz auf deinen eigenen Geräten das Thema ist, gefällt dir vielleicht auch [TobiVoice](/projects/TobiVoice/) für On-Device-Voice-to-Text auf dem Mac. diff --git a/src/content/blog/en/tobiboard-vs-gboard/index.md b/src/content/blog/en/tobiboard-vs-gboard/index.md index e96e88dbf..830187bb2 100644 --- a/src/content/blog/en/tobiboard-vs-gboard/index.md +++ b/src/content/blog/en/tobiboard-vs-gboard/index.md @@ -1,12 +1,12 @@ --- title: "TobiBoard vs Gboard: A Privacy-First Keyboard Comparison" -description: "How TobiBoard, an open-source on-device Android keyboard, compares to Gboard on privacy, data collection, AI features, and control." +description: "How TobiBoard, an open-source Android keyboard whose AI runs on-device, compares to Gboard on privacy, data collection, AI features, and control." date: "Jul 4 2026" tags: ["tobiboard", "gboard", "android", "privacy", "keyboard"] lang: "en" --- -> **Short answer:** Gboard is polished and deeply tied into Google's ecosystem; TobiBoard is open-source, keeps your typing on-device, and sends no telemetry to anyone. Both type offline. The real difference is control: Gboard is closed-source software from an advertising company, while TobiBoard has no account, no backend, and adds AI only when you opt in with your own API key. I built TobiBoard for people who want the second thing. +> **Short answer:** Gboard is polished and deeply tied into Google's ecosystem; TobiBoard is open-source, keeps your typing on-device, and sends no telemetry to anyone. Both type offline. The real difference is control: Gboard is closed-source software from an advertising company, while TobiBoard has no account, no backend, and runs even its voice-to-text and text fix on your phone. I built TobiBoard for people who want the second thing. I fork and maintain [TobiBoard](/projects/TobiBoard/), so I'm not neutral here, but I'll keep the comparison fair. Gboard is a genuinely good keyboard. The question is what you trade for it. @@ -18,7 +18,7 @@ I fork and maintain [TobiBoard](/projects/TobiBoard/), so I'm not neutral here, | Telemetry | None, no backend | Sends usage data to Google | | Account | None | Google ecosystem | | Everyday typing | On-device, offline | On-device + Google services | -| AI features | Optional, bring-your-own-key | Google's, on by default | +| AI features | On-device by default, cloud optional with your own key | Google's, in Google's cloud | | Cost | Free | Free | | Where to get it | GitHub, Obtainium, self-hosted F-Droid | Play Store / pre-installed | | Best for | Control and privacy | Convenience, Google integration | @@ -33,18 +33,20 @@ TobiBoard inherits this from [HeliBoard](https://github.com/Helium314/HeliBoard) **Source and telemetry.** Gboard is closed-source and made by Google. It sends usage data back to improve its models and services. TobiBoard is GPL-3.0, has no backend at all, and collects nothing, there's no server for your data to go to. -**AI, and who holds the key.** Gboard's smart features run through Google. TobiBoard ships **two optional AI helpers that are off by default**: +**AI, and where it runs.** Gboard's smart features run through Google. TobiBoard ships **two AI helpers that run on the phone itself**: -- **Voice-to-Text**: long-press Return, tap the mic, speak; your words come back as polished text. -- **Text Fix**: select rough text, hit Fix, get a clean version in the same language. +- **Voice-to-Text**: long-press Return, tap the mic, speak; your words come back as text. Transcription happens locally on Parakeet TDT 0.6B via [sherpa-onnx](https://github.com/k2-fsa/sherpa-onnx), and auto-detects English, German, Spanish and French. +- **Text Fix**: select rough text, hit Fix, get a clean version in the same language. Runs locally on Qwen 2.5 through MediaPipe. -Both run only when you add your own [OpenRouter](https://openrouter.ai/) or [PayPerQ](https://ppq.ai/) key, and OpenRouter routes default to zero data retention. Nothing reaches the cloud until you opt in, and even then it goes to a provider *you* chose, not to me and not to Google. +No account, no API key, and dictation works in aeroplane mode. The cost is real and worth stating: each model is a one-time download of a few hundred megabytes, and a phone is slower than a datacentre. + +If you would rather use a cloud model, that is the opt-in: add your own [OpenRouter](https://openrouter.ai/) or [PayPerQ](https://ppq.ai/) key and the AI features route there instead, with OpenRouter defaulting to zero data retention. Either way it goes to a provider *you* chose, not to me and not to Google. **How you install it.** Gboard comes from the Play Store or pre-installed. TobiBoard ships outside the store: grab the [APK from GitHub Releases](https://github.com/leinss/TobiBoard/releases/latest), point [Obtainium](https://github.com/ImranR98/Obtainium) at the repo for automatic updates, or add the self-hosted F-Droid repo at [leinss.xyz/TobiBoard/repo](https://leinss.xyz/TobiBoard/repo). ## Which should you pick? - **Stay on Gboard** if you're happy in Google's ecosystem and want the most polished, feature-complete keyboard with zero setup. -- **Switch to TobiBoard** if you want your typing to stay yours: open-source, no telemetry, no account, and AI that only runs on your own key when you ask for it. +- **Switch to TobiBoard** if you want your typing to stay yours: open-source, no telemetry, no account, and AI that runs on your own phone rather than someone's servers. TobiBoard is open source: read the code, build it yourself, or file an issue: [github.com/leinss/TobiBoard](https://github.com/leinss/TobiBoard). If privacy on your own devices is the theme, you might also like [TobiVoice](/projects/TobiVoice/) for on-device voice-to-text on the Mac. diff --git a/src/content/projects/TobiBoard/index.md b/src/content/projects/TobiBoard/index.md index 0d7c02e2d..7bb7042c0 100644 --- a/src/content/projects/TobiBoard/index.md +++ b/src/content/projects/TobiBoard/index.md @@ -1,7 +1,7 @@ --- title: "TobiBoard" slug: "TobiBoard" -description: "A privacy-first, on-device Android keyboard with optional, bring-your-own-key AI voice-to-text and text fix." +description: "A privacy-first Android keyboard whose AI voice-to-text and text fix run on the device itself, with no account and no API key." date: "Jun 2026" demoURL: "https://github.com/leinss/TobiBoard/releases/latest" repoURL: "https://github.com/leinss/TobiBoard" @@ -9,23 +9,24 @@ repoURL: "https://github.com/leinss/TobiBoard" ![TobiBoard](/images/projects/TobiBoard/feature.png) -**TobiBoard** is a fast, private Android keyboard that runs **entirely on your device**: a fork of [HeliBoard](https://github.com/Helium314/HeliBoard) with all of its offline typing, glide, autocorrect, suggestions and dictionaries. On top of that it adds **two optional AI helpers** you switch on with your own API key, or ignore completely. +**TobiBoard** is a fast, private Android keyboard that runs **entirely on your device**: a fork of [HeliBoard](https://github.com/Helium314/HeliBoard) with all of its offline typing, glide, autocorrect, suggestions and dictionaries. On top of that it adds **two AI helpers that also run on your device**, plus a clipboard manager. -## Two optional AI features +## Two AI features, on-device by default -- **Voice-to-Text**: long-press Return, tap the mic, speak; your words land as polished text. -- **Text Fix**: select rough text, hit Fix; get back a clean, well-formatted message in the same language. +- **Voice-to-Text**: long-press Return, tap the mic, speak; your words land as text. Transcription runs locally on [Parakeet TDT 0.6B](https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3) via [sherpa-onnx](https://github.com/k2-fsa/sherpa-onnx), and auto-detects English, German, Spanish and French. +- **Text Fix**: select rough text, hit Fix; get back a clean, well-formatted message in the same language. Runs locally on Qwen 2.5 through [MediaPipe](https://ai.google.dev/edge/mediapipe/solutions/genai/llm_inference); Gemma is available too. -Both are **off by default** and only run when you add your own [OpenRouter](https://openrouter.ai/) or [PayPerQ](https://ppq.ai/) key. Nothing leaves your device until you opt in, and OpenRouter routes default to **zero data retention**. No account, no subscription, no telemetry, no backend. +Both default to the on-device engine. That means **no account, no API key, no subscription, no telemetry and no backend**, and dictation works in aeroplane mode. The trade-off is honest: each model is a one-time download of a few hundred megabytes, and the phone does the work, so it is slower than a datacentre. -Your typing never leaves the device, your API key is encrypted with the Android Keystore, and the microphone is only used while you're actively dictating. → [Privacy policy](/projects/tobiboard/privacy) +If you would rather use a cloud model, that stays an opt-in: add your own [OpenRouter](https://openrouter.ai/) or [PayPerQ](https://ppq.ai/) key and the AI features route there instead. OpenRouter routes default to **zero data retention**. Nothing goes to a server of mine either way; there isn't one. + +Your typing never leaves the device, any API key you do add is encrypted with the Android Keystore, and the microphone is only used while you're actively dictating. → [Privacy policy](/projects/tobiboard/privacy) ## Get it - **APK**, download from [GitHub Releases](https://github.com/leinss/TobiBoard/releases/latest). - **Automatic updates**: install [Obtainium](https://github.com/ImranR98/Obtainium) and point it at this GitHub repo; it tracks new releases for you, no store needed. - **F-Droid (self-hosted)**, add the repo at [leinss.xyz/TobiBoard/repo](https://leinss.xyz/TobiBoard/repo) for signed updates through your F-Droid client. -- **IzzyOnDroid**: inclusion request submitted, in review. TobiBoard installs side-by-side with HeliBoard, so you can keep both. @@ -33,4 +34,4 @@ TobiBoard installs side-by-side with HeliBoard, so you can keep both. ## Open source -GPL-3.0, forked from HeliBoard (AOSP / OpenBoard lineage). Everyday typing stays fully on-device; the two AI features are the only part that reaches the cloud, and only with your own key. Source and build instructions: [github.com/leinss/TobiBoard](https://github.com/leinss/TobiBoard). +GPL-3.0, forked from HeliBoard (AOSP / OpenBoard lineage). Typing and both AI features run on-device; the only thing that can reach the cloud is a provider you opt into with your own key. The bundled speech and LLM runtimes are prebuilt binaries, which is why the app ships here rather than through F-Droid's main repository. Source and build instructions: [github.com/leinss/TobiBoard](https://github.com/leinss/TobiBoard). diff --git a/src/content/staticPages/now.md b/src/content/staticPages/now.md index 30a3935fd..e3cab71f1 100644 --- a/src/content/staticPages/now.md +++ b/src/content/staticPages/now.md @@ -17,11 +17,11 @@ I care about the observability more than is probably normal. Two-tier health che ## The apps -Alongside that I build **privacy-first apps**: tools that run on your own device, work without accounts or a backend, and only reach the cloud when *you* bring your own AI key. No telemetry, no data collection, no lock-in. +Alongside that I build **privacy-first apps**: tools that run on your own device, work without accounts or a backend, and reach the cloud only if *you* choose to bring your own AI key. No telemetry, no data collection, no lock-in. -Most of that time goes into [TobiBoard](/projects/TobiBoard), an on-device Android keyboard with optional bring-your-own-key AI voice-to-text and text fixing, and [TobiReader](/projects/TobiReader), a local-first RSS reader with on-device read-aloud and optional AI summaries. TobiBoard ships from my own [F-Droid repository](https://leinss.xyz/TobiBoard/repo). Around those sits a small portfolio: a cross-platform screen recorder, macOS voice-to-text and menu-bar utilities, and a few AI-assisted side projects. The full list is on the [projects page](/projects). +Most of that time goes into [TobiBoard](/projects/TobiBoard), an Android keyboard whose AI voice-to-text and text fixing run on the phone itself, with no account and no API key, and [TobiReader](/projects/TobiReader), a local-first RSS reader with on-device read-aloud and optional AI summaries. TobiBoard ships from my own [F-Droid repository](https://leinss.xyz/TobiBoard/repo). Around those sits a small portfolio: a cross-platform screen recorder, macOS voice-to-text and menu-bar utilities, and a few AI-assisted side projects. The full list is on the [projects page](/projects). -The thread through all of it is seeing how far useful, AI-flavoured software can go while keeping user data on the user's own hardware. In practice that's two patterns: run models locally where it's feasible, and bring-your-own-key for the rest, so anything cloud-bound uses *your* API key and endpoint, never mine. +The thread through all of it is seeing how far useful, AI-flavoured software can go while keeping user data on the user's own hardware. In practice that's two patterns: run models locally wherever it's feasible, which on TobiBoard now covers both the speech recognition and the text-fix LLM, and bring-your-own-key for the rest, so anything cloud-bound uses *your* API key and endpoint, never mine. ## And some consulting diff --git a/src/content/staticPages/uses.md b/src/content/staticPages/uses.md index 5d4a6827d..8089b0e95 100644 --- a/src/content/staticPages/uses.md +++ b/src/content/staticPages/uses.md @@ -44,8 +44,9 @@ This site, and most of my web work: ## On-device and AI tooling - **Ollama** for local models on the desktop, including the auto-tagging in [taggr](/projects/taggr). -- **On-device speech**: transcription and text-to-speech that run on the phone, so audio never leaves it. -- **Bring-your-own-key** cloud models for the optional AI features in my apps. The key stays on the user's device and calls go to the provider *you* choose. +- **On-device speech**: transcription and text-to-speech that run on the phone, so audio never leaves it. TobiBoard dictates with Parakeet TDT 0.6B through sherpa-onnx. +- **On-device LLMs**: Qwen 2.5 through MediaPipe drives TobiBoard's text fix, so the default path needs neither a key nor a network. +- **Bring-your-own-key** cloud models as the opt-in alternative in my apps. The key stays on the user's device and calls go to the provider *you* choose. ## Infrastructure and self-hosting