Pluto #
By Pluto: Brandon Ngo, Andre Slavescu, Ibrahim Ahmed, Ishan Baliyan, Anay Baid, Ali Al Shammaa
Describe an app. We build it. Instantly. #

Pluto turns your ideas into working apps using just text and images. No coding required. Describe what you want, attach a sketch if you’d like, and Pluto generates a fully functional app you can use, edit, and share with friends on their own devices.


How It Works #
3 screens. That’s it.
- Describe your app with text, images, or both
- Wait a moment while our LLM builds it in the background
- Use your app right inside Pluto, then share it with the world


What Makes Pluto Special #
Multimodal prompting - Type a description, snap a photo of a sketch, or combine both. Pluto understands all of it.
Live in-app preview - Your generated app runs in a sandboxed WebView with a full backend database. No export needed.

Edit with natural language - Don’t like something? Just tell Pluto what to change. It reads your current app and applies targeted updates.
Version history - Every edit creates a new version. Rewind to any previous version at any time.

Discovery feed - Publish your app for the entire Pluto community to try. Browse and use apps other people have built.

Background generation - Start a build, close the app, do whatever you want. A notification tells you when it’s ready.

Under the Hood #
| Layer | Stack |
|---|---|
| Android client | Kotlin, Jetpack Compose, MVVM, Coroutines, WebView |
| Backend | Python, FastAPI, hosted on Railway |
| AI | OpenAI API with structured JSON blueprints |
| Auth | JWT access + refresh tokens, secure SSL |
| Generated app storage | Per-app sandboxed SQLite via REST API |
- Full end-to-end pipeline: auth, multimodal prompt, async generation, versioned artifacts, local unpack, WebView runtime, and a per-app database
- Generated apps get their own CRUD backend so they can actually store and retrieve data
- Connection pooling with LRU eviction keeps the backend fast under load
- Zip extraction hardened against path traversal attacks
- Foreground service ensures generation completes even if the user leaves the app
The Team #
Built by Team Pluto for CS 446, Winter 2026.