Write real Kotlin and Jetpack Compose. Push updates to every device in seconds.
The Ketoy CLI runs your whole workflow from the terminal. Ketoy Skills give any AI coding agent an accurate map of what Ketoy supports, before it writes a line.
Set up a project, push to the cloud, and roll back — all from the terminal.
npm install -g ketoy-devInstall a skill pack that grounds any coding agent in how Ketoy actually works before it writes code.
ketoy skills addAdd one annotation. Run one Gradle task. Every device gets the change in seconds.
Ketoy generates code on device, the same way ART does. It stays inside Google policy.
Security modelKetoy supports the full Compose toolkit, not a curated subset. When Compose adds a parameter, one command picks it up.
All 35 Material 3 components. Every parameter included.
Data classes, sealed classes, extensions, and lambdas. Real Kotlin, compiled to bytecode.
launch, async, withContext, and 9 Flow operators. Structured concurrency included.
A real Android ViewModel. It survives config changes and works with Hilt.
HTTP, DataStore, Room, and navigation. 67 capabilities built in.
Drop it in. @Inject works exactly as before.
One annotation and one Gradle task. That is the whole difference.
See everything Ketoy supportsKetoy verifies every bundle before it runs. Here is how, in three parts.
An Ed25519 signature is checked before any code runs. Your private key stays on your server. Only you can ship a bundle.
The compiler rejects file access, reflection, and any unregistered API. Unsafe code never compiles.
KBC code reaches the platform through registered capabilities. Nothing else is callable.
Yes. Ketoy generates code on device, exactly like ART does with bytecode. It is the same idea as Lua in a game engine. If your CDN goes down, the last signed bundle keeps running.
Stuck on something, evaluating Ketoy for your team, or wondering whether your in-house SDK is supported? We answer every email, usually the same day.
Ketoy is a Kotlin-native over-the-air (OTA) update framework for Android. You write real Jetpack Compose, ViewModels, and business logic in Kotlin, compile it to a tiny signed .ktx bytecode bundle, and push changes over-the-air to installed apps in seconds - no Play Store release and no JSON DSL.
Ketoy is an OTA framework, and SDUI is one of the things it can do. Because it ships real Kotlin and Compose over the air, a bundle can drive a whole screen from the server - that is SDUI - and it can equally ship a ViewModel, a network call, or a pricing rule that no JSON schema could express.
Jetpack Compose UI, ViewModels and state, navigation, coroutines and Flow, networking, Room and DataStore access, and ordinary Kotlin such as data classes, objects, and functions. UI-only and logic-only bundles are both fine.
Instead of a JSON schema and a parallel component model, Ketoy uses ordinary Kotlin and Jetpack Compose compiled to Ketoy Bytecode (KBC). Bundles are roughly 20x smaller than equivalent JSON SDUI, Ed25519-signed, and rendered as native Compose on device.
Yes. Ketoy delivers UI and logic changes over-the-air without shipping a new APK/AAB. Bundles execute in a sandbox and render native Compose, which keeps updates within Play Store policies.
OTA vs SDUI, bundle sizes, Play Store policy, offline behaviour, debugging.
More questions