Componentsyou own.No JS required.

No npm. No React. Just Python.

Quickstart

$ pip install starui

$ star init

$ star add button

APERTURE

Write Python. Get reactivity.

app.py
from starhtml import *
from starui import (
    Card, CardHeader, CardTitle,
    CardDescription, CardContent,
    Input,
)

def profile():
    name = Signal("name", "friend")

    return Card(
        name,
        CardHeader(
            CardTitle(data_text=name.if_(
                "Hello, " + name,
                "Hello, stranger")),
            CardDescription(
                "Update your profile"),
        ),
        CardContent(
            Input(
                placeholder="Your name",
                data_bind=name),
        ),
    )

Update your profile

Name

First Principles

The shadcn/ui model, rebuilt for Python. A component library that stays out of your way — do it all without leaving Python.

01

Own The Code

star add button — that’s it. The CLI copies the source into your project. Read it, modify it, make it yours.

02

Server-First

The server is the source of truth. Signals handle the rest — a modal open state, a form validation, a toggle. Client-side state only where you actually need it.

03

Tailwind v4

The star CLI downloads the Tailwind binary, runs watch mode, and handles minification. No Node. No npm. The entire CSS toolchain is one Python command.

The Constellation

34+ components built with Tailwind v4.

COMPONENTS
Command
Card
Switch
Dialog
Tabs
Button
Calendar
Search Emoji
Calculator
Profile⌘P
Billing⌘B
star add command

The observatory
is open.

Start building with components you actually own.