Suggest three short replies to any incoming message in about half a millisecond. Nothing is sent to a server, nothing is generated, and nothing is added to your build except a 5 MB library, on Android, iOS, desktop and the web.
Free up to 10k monthly active devices · No API key · On Maven Central · Android, iOS, desktop, web
This is the actual Comeback library, compiled to WebAssembly and running in your browser. Type a message you received and see the replies it suggests. Your text never leaves this page.
Suggested replies
No server, no native libraries, no Google Play services. It is a small Kotlin library that you can read, test and ship.
Replies come from a fixed, reviewed list of about 1,300 short replies and are never generated, so it can't say something rude or odd. Unhelpful chips like "What?" or "Huh" are never shown.
At most one reply per intent group, so you won't get "Thanks", "Thank you" and "Thanks!" side by side.
Pure Kotlin inference. There is no ONNX Runtime, TFLite, ML Kit or native code, and it runs on Android (minSdk 21), iOS, macOS, JVM desktop, JavaScript and WebAssembly, from Kotlin or Java.
The model ships inside the library on every platform. It makes no network calls, needs no permissions and sends no telemetry, so messages never leave the phone.
Real output from the sample app on an Android emulator. These are not mockups.
"Are you coming tonight?" → I'm not sure yet · I haven't decided yet · Yes
"Thanks for your help" → No problem, have a great day! · You're welcome · Anytime
"Running 10 minutes late" → tapped "OK"
The Kotlin Multiplatform sample app, built from the published artifacts, gives the same result on Android, iOS, desktop and the web.

Are you coming tonight? → I'm not sure yet 70%

Are you coming tonight? → I'm not sure yet 70%

Are you coming tonight? → I'm not sure yet 70%

Are you coming tonight? → I'm not sure yet 70%
One line in your Gradle file, from Maven Central. Works in commonMain for Android, iOS, macOS, JVM desktop, JavaScript and WebAssembly. No API key, no account.
// build.gradle.kts: commonMain, or any platform source set
dependencies {
implementation("io.github.rajumark:comeback:2.0.0")
}
// Gradle picks the right artifact per platform:
// comeback-android · comeback-jvm · comeback-iosarm64 · comeback-iossimulatorarm64
// comeback-macosarm64 · comeback-js · comeback-wasm-js
Add Comeback from rajumark to this Kotlin Multiplatform or Android project.
What it does: on-device smart replies. Given a received message, it suggests 3 short replies to tap, picked from a fixed reviewed list. English, ~5 MB, no dependencies, no network.
Install (Maven Central, no extra repository):
build.gradle.kts (commonMain or any source set): implementation("io.github.rajumark:comeback:2.0.0")
Platforms: Android, iOS, macOS, JVM desktop, JavaScript, WebAssembly
Usage:
val comeback = Comeback() // off the main thread, keep one instance
val chips = comeback.replies("Are you coming tonight?").map { it.text }
Repo: https://github.com/rajumark/comeback#readme
Add the dependency, then follow the README for the exact API and current version.
Load once and reuse the instance. replies() is thread-safe.
val comeback = Comeback()
val chips = comeback.replies("Let's meet at 7")
chips.map { it.text } // [OK, OK, see you then, See you there!]
comeback.close()
try (Comeback comeback = new Comeback()) {
List<SmartReply> r =
comeback.replies("Are you coming tonight?");
}
Anywhere a user answers a message and a single tap would do.
Show reply chips above the composer for the last received message.
"I miss you" → I miss you tooOffer reply actions straight from a notification, with no server round trip.
"Can you call me?" → SureTyping on a watch is painful; one tap isn't.
"See you tomorrow" → See youHelp buyers and sellers answer quickly on logistics.
"Let's meet at 7" → OK, see you thenLet people with motor or typing difficulties answer with one tap.
"Good morning!" → Hello!Works in airplane mode, on patchy networks and in regions where cloud AI isn't an option.
"Running 10 minutes late" → OKReal problems Comeback solves today. Pick one and ship it.
Chat app reply chips · Show three one-tap replies above the keyboard for the last received message.
Notification quick replies · Reply straight from the notification shade, with no server round trip.
Wear OS messaging · Typing on a watch is painful; tapping "On my way" isn't.
Marketplace seller inbox · Answer "Is this still available?" with "Yes, it is" in one tap.
Driver & delivery apps · Let drivers send "Reached" or "5 minutes away" without typing on the road.
Rental & property chat · Owners reply to "Can I visit today?" in one tap instead of typing each time.
Team chat · Quick "Sounds good", "On it" and "Thanks!" acknowledgements in work messengers.
Senior-friendly messenger · Big one-tap reply buttons for parents and grandparents who find typing slow.
Accessibility · People with motor or typing difficulties answer any message with a single tap.
Email client · Short suggested replies for quick "Yes, works for me" type emails.
In-game chat · Reply to teammates without leaving the match or opening a keyboard.
Appointment reminders · Patients reply "Confirmed" or "Can we reschedule?" in one tap.
Delivery customer chat · Customers answer the delivery person with "Leave it at the door" instantly.
Family safety app · Kids reply "Reached school" or "Coming home" to parents with one tap.
Classroom messaging · Students and parents quickly acknowledge teacher announcements.
Sales CRM · Reps respond to lead messages fast so no enquiry waits for hours.
Housing society app · Residents reply "Noted, thanks" to society notices without typing.
Chatbot suggestions · Show likely user responses as buttons in a support bot conversation.
Offline-first messaging · Suggestions keep working in airplane mode and on patchy rural networks.
Dating & social apps · Help users keep conversations moving with quick, friendly, reviewed replies.
Measured on 335 hand-written messages across 16 categories. A reply counts as good when a person would plausibly send it.
| Comeback | Google ML Kit Smart Reply | |
|---|---|---|
| A good reply in the top 3 | 63.6% | 72.8% |
| Top reply is good | 42.1% | 52.8% |
| Answers every message | Yes | 95% |
| Size | 4.6 MB | 6.6 MB + 4.4 MB native libs |
| Latency (Android emulator) | ~0.5 ms | ~16.6 ms |
| Dependencies | None | ML Kit + native code |
ML Kit gives better replies. Comeback is smaller and much faster, needs no native code or Google Play services, and you can read and change its reply list. It is strongest on thanks (100% good in the top 3), yes/no questions (90%), affection and goodbyes. It is weakest on opinions and open questions, where you can hide the chips with minConfidence.
| Member | Description |
|---|---|
Comeback() | Loads the bundled model. Implements AutoCloseable. |
replies(message, limit = 3, minConfidence = 0f) | The best replies first, one per intent group. Empty for a blank message, or when the best reply scores below minConfidence. |
SmartReply(text, confidence) | One reply. |
No API key, no sign-up, no license file. Add Comeback to your project and ship. It stays free until your product passes 10,000 monthly active devices, and there's never a limit on how often each device runs it.
For indie developers, startups and growing apps, up to 10,000 monthly active devices.
For products above 10,000 monthly active devices on any platform.
A small, fast on-device model trained for your language, domain or task.
A monthly active device is a phone, tablet or other device that runs Comeback at least once in a calendar month.
The 10,000 limit applies separately to each product, each platform (Android, iOS, web…) and each Hoverfly model. Crossed it? You have 30 days to get a commercial license.
Questions about licensing? Email raju348636@gmail.com or call / WhatsApp +91 63533 21951. Full terms: Hoverfly Community License.
A Kotlin Multiplatform library (Android, iOS, macOS, JVM desktop, JavaScript, WebAssembly) that reads a message and returns short replies to show as tappable chips, like the smart replies in messaging apps.
No. It scores a fixed list of about 1,300 reviewed replies and returns the best ones, so every possible output is known in advance.
English in v1. To detect the language first and show chips only for English, use Beacon.
Yes. Inference runs entirely on the device in plain Kotlin. It makes no server calls, needs no network permission and sends no telemetry.
Features, the top 5 replies and the 3 shown chips match the Python reference on all 354 test vectors, both on the JVM and on an Android device.
Nothing for products with up to 10,000 monthly active devices per platform, including commercial apps. There is no API key or account, and no limit on how often it runs. Above that, a commercial license is needed. See Pricing.
Nothing breaks: Comeback keeps working and never checks in with a server. You have 30 days to get a commercial license. Email raju348636@gmail.com or call / WhatsApp +91 63533 21951.
Yes. Hoverfly trains custom on-device models for your language, domain or task and ships them as a small library like this one. Get in touch on the same email or number.
Built by a developer, for developers.
Every model here started as a problem I hit in my own apps. I made them small, private and free to start, so you can spend your time on the part your users will love.
Eight small on-device models, one job each. Same install, same free tier, and the same promise: nothing leaves the device.