cd /news/computer-vision/show-hn-ios-style-select-text-on-any… · home topics computer-vision article
[ARTICLE · art-49246] src=github.com ↗ pub= topic=computer-vision verified=true sentiment=↑ positive

Show HN: iOS-style "select text on any image" OCR for de-googled Android

A developer released TextGrab, an open-source Android app that enables iOS-style text selection from any image on de-googled Android devices like GrapheneOS. The app uses Google's on-device ML Kit OCR model, runs entirely offline without internet permission, and supports multiple Latin-script languages. It is available under the MIT License.

read2 min views6 publishedJul 7, 2026
Show HN: iOS-style "select text on any image" OCR for de-googled Android
Image: source

Select and copy text from any image on de-googled Android (GrapheneOS, CalyxOS, LineageOS, ...). Works like iOS Live Text or the text selection on Pixel phones, but fully local and without Google Play services.

Main workflow, from anything on your screen to copied text in seconds:

  • Take a screenshot (Power + Volume down)
  • Swipe down and tap the OCR screenshot tile - Tap or drag over the text, then copy

One-time setup: open quick settings, tap the edit (pencil) button and drag the OCR screenshot tile into your tiles.

Second workflow, for existing images:

Share any image from any app (gallery, browser, messenger) to TextGrab and the text is selectable. Opening image files with TextGrab from a file manager works too, as does picking an image from the app's home screen.

Tap a word Long-press and drag Full text view

The app bundles Google's ML Kit on-device text recognizer, the same class of neural model that powers Pixel Live Text. The model is packaged inside the APK, so recognition:

  • runs entirely on the device. The app has no internet permission. - needs no Google Play services and works on GrapheneOS out of the box. - is fast: typically well under a second per screenshot on real hardware.

All Latin-script languages, including:

English, German, French, Spanish, Italian, Portuguese, Dutch, Polish, Czech, Danish, Swedish, Norwegian, Finnish, Hungarian, Romanian, Turkish, Croatian, Slovak, Slovenian, Estonian, Latvian, Lithuanian, Albanian, Catalan, Basque, Galician, Icelandic, Irish, Maltese, Swahili, Tagalog, Vietnamese (partial, some diacritics may be missed) and more, plus digits and common punctuation.

Chinese, Japanese, Korean and Devanagari need separate ML Kit model packs (roughly 20 MB each). They are not included yet but are easy to add. Open an issue if you want one of them.

./gradlew assembleRelease

Output: app/build/outputs/apk/release/app-release.apk

.

To build a signed release, create a keystore and put its credentials in keystore/keystore.properties

(this directory is gitignored):

storeFile=keystore/your-release.jks
storePassword=...
keyAlias=...
keyPassword=...

Without that file the release build is unsigned. Keep your keystore safe: updates must be signed with the same key.

minSdk 26

(Android 8.0),targetSdk 36

.- The APK is ~43 MB; ~30 MB of that is the bundled recognition model.

  • Photo permission is only requested for the "latest screenshot" feature. Images opened via share or the picker need no permission at all.

The app source code is licensed under the MIT License.

The bundled ML Kit text recognition SDK and its model are proprietary Google software, used and redistributed under the ML Kit Terms of Service. They are pulled from Google's Maven repository at build time and are not part of this repository.

── more in #computer-vision 4 stories · sorted by recency
── more on @textgrab 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-ios-style-se…] indexed:0 read:2min 2026-07-07 ·