Build UIs
With Python

Sistine wraps Streamlit with a routing layer, DOM builder, and reactive components—giving you pixel-perfect custom UI.

Sistine
main.py
from sistine import Sistine, el

app = Sistine(title="My App")

@app.sistine("/")
def home():
    return str(
        el.div(cls="p-4 bg-chart-3 border-4 border-border")(
            el.h1(cls="text-2xl font-black")("Awesome!"),
            el.button(x_on_click="alert('Hi')")("Click")
        )
    )
01

HTML Builder

Build HTML with a chaining syntax—attributes first, children after. Full CSS control.

02

Reactive Client

Alpine.js powered components. Talk to your @app.query endpoints without reloading.

03

MVC Architecture

Decorator-based routing with path params. Keep logic organized with views and controllers.