Full-stack Python apps in a single file

Write Python. Get a web app. No JavaScript, no build step, no framework to learn. Your code runs on the server with full CPython -- instant live updates over WebSocket.

Start Building See Demo
app.py
from gux import ui, db, page

# Persistent SQLite -- just works
db.execute("CREATE TABLE IF NOT EXISTS notes (id INTEGER PRIMARY KEY, text TEXT)")

@page("/")
def home():
    ui.header("My App")

    with ui.card():
        notes = db.query("SELECT * FROM notes")
        for note in notes:
            ui.text(note["text"])

        def add(val):
            db.execute("INSERT INTO notes (text) VALUES (?)", [val])
            page.navigate("/")

        ui.input(placeholder="New note...", on_enter=add)

Zero Config

No webpack, no npm, no build step. Write a .py file and it's live. Hot reload on save.

🔌

Full Python

Your code runs in CPython on the server. Use pip packages, f-strings, everything. No subset limitations.

📂

Built-in SQLite

Every app gets its own persistent database. db.execute() and db.query() -- that's the whole API.

🌐

Pages & Routing

@page("/users/:id") with path params, query strings, and client-side navigation. Multi-page apps in one file.

🔐

Isolated Per App

Each app runs in its own sandbox with its own database. Your data never touches other apps.

🚀

Instant Deploy

Every app gets a subdomain. yourapp.siteplatform.app is live the moment you hit Run.

How it works

1

Write Python

Use the browser editor or push code. Components like ui.card(), ui.button(), ui.input() build your UI.

2

Hit Run

Your code executes server-side. UI updates stream to the browser over WebSocket in ~5ms.

3

Share the URL

Your app is live at yourapp.siteplatform.app. No deploy pipeline, no CI/CD. It's just there.

Start building in 30 seconds

Free tier includes 5 apps with persistent storage.

Create Free Account