Skip to content

Repository files navigation

StemJSON Examples

Native Android UI/UX, generated by AI. A set of runnable Android demos that show StemJSON in practice — the new JSON-based language AI writes, rendered as native Jetpack Compose by StemRuntimeSDK.

Demo of StemJSON-generated Android UI/UX

The idea

Every module in this repo was produced through AI-assisted authoring — human-designed prompts, human selection among candidate outputs, and human editorial curation of the final JSON. StemJSON is a declarative JSON DSL designed to be written by an LLM and rendered as native Jetpack Compose by StemRuntimeSDK. No web views, no React Native, no JavaScript bridge.

Point an AI at the LLM spec (or the full spec for human context). Ask for the UI/UX you want. Drop the output into this workspace. Run it.

Demos at a glance

Project What it is
StemQuickStart A single ComponentActivity that validates one JSON module and embeds the render. Copy this to start.
StemCompose Full showcase — every module type rendered modally.
StemHome Native Compose + StemJSON mixed in the same app with bidirectional state.

⭐ Start with StemHome

The demo that answers: can AI-generated UI coexist with hand-written Compose in the same app? Yes — and this shows how.

Native Compose tabs alongside an LLM-generated StemJSON module, sharing state bidirectionally. Toggle a native device card → the JSON module receives it via onCustom and updates declaratively. Change JSON state → the native view reads it back through runtime.subscribe and re-renders. runtime.trigger() from Kotlin, runtime.subscribe() back — no bridge, no serialization per call, no polling.

The point: you don't have to choose. Let the AI generate the feature surface; keep the critical paths in the Kotlin code you wrote. Both live in the same screen, backed by the same state.

Run it

git clone https://github.com/vkrychun/stem-examples-kotlin.git
cd stem-examples-kotlin
./gradlew :StemQuickStart:installDebug

Or open the project in Android Studio and run any of the three Stem* modules. Android 7.0 (API 24)+.

Note: on physical devices, the freeware tier of StemRuntimeSDK displays a small "Powered by StemJSON" notice on rendered surfaces. This is removable under the paid SDK licence; see the StemRuntimeSDK EULA.

Learn more

License

The example code in this repository — Kotlin sources and JSON modules — is released under the MIT License. Copy, adapt, ship.

The two projects this repo links against are governed by their own licenses:

If you redistribute or adapt the JSON modules in a product that implements StemJSON, the spec's attribution requirement still applies (see the StemJSON LICENSE).


StemJSON specification created by Vasyl Krychun — https://stemjson.com

"StemJSON", "StemRuntimeSDK", "StemRuntime", and the StemJSON logo are trademarks of Vasyl Krychun. See the StemJSON trademark policy for permitted uses.

Releases

Packages

Used by

Contributors

Languages