Android client for Kutt, the open-source URL shortener. Works with kutt.it or a self-hosted instance.
This project was written entirely by Cursor AI. I directed the features and reviewed the result; I did not hand-write the app.
Current version: 2026.08.03 (release/Kutt-2026.08.03.apk)
- Fix language picker flicker. Choosing a language no longer applies immediately; tap Apply to switch.
- Text selection context menu: highlight a URL in Chrome, WhatsApp, Notes, and so on, then tap Shorten URL. If the source app allows it, the selected text can be replaced with the short URL.
- Share sheet: share a URL to Kutt from the browser.
- Clipboard: default is ask first, not auto-create. Android does not let apps read the clipboard in the background, so detection happens when you open Kutt, or from the Shorten clipboard Quick Settings tile.
- Link list, search, click stats, delete, custom slug, password, and expiration.
- API key + instance URL (including self-hosted).
Auto-shortening on every copy is easy to get wrong: password-reset links, internal URLs, or links you never meant to shorten. Defaults:
- Ask first (recommended)
- Auto-shorten — optional, when the app opens and the clipboard has a URL
- Don’t detect
After a successful shorten, the short URL can be copied automatically (toggle in Settings). Quick shorten uses reuse=true so the same destination is not duplicated.
- Sign up on a Kutt instance, open Settings, and create an API key.
- Open the app, enter the instance URL (
https://kutt.itor your own) and the API key. - Highlight a URL in another app → Shorten URL.
Needs the Android SDK (compileSdk 35) and JDK 17 or 21. Android Studio builds that ship JDK 25 do not work with Gradle 8.11 in this project — set Gradle JDK to 21.
gradlew.bat assembleReleaseThe signed APK is copied to release/Kutt-2026.08.03.apk.