Open Source · pip install cacao

Build web apps in
pure Python

Cacao is a reactive framework that turns Python scripts into interactive dashboards, internal tools, and data apps. No frontend skills required.

Explore Demos Star on GitHub
$ pip install cacao
50+
Components
6
Chart Types
0
JavaScript Required
4
Lines to Start

Write Python. Get a web app.

Cacao turns simple Python scripts into polished, interactive interfaces.

app.py
import cacao as c

c.config(title="My Dashboard")

with c.row():
    c.metric("Revenue", "$45K",
           trend="+20%", trend_direction="up")
    c.metric("Users", "1,247",
           trend="+12%", trend_direction="up")

with c.card("Trend"):
    c.line(data, x="date", y="revenue")
Result
Revenue
$45K
+20%
Users
1,247
+12%
Trend

Everything you need

A complete toolkit for building data-driven web applications.

Pure Python

Write web apps in Python. No JavaScript, no HTML templates, no CSS. Just Python.

50+ Components

Charts, tables, forms, metrics, progress bars, accordions, timelines, and more.

Reactive Signals

Built-in reactive state management. Signals automatically sync Python state to the browser.

Static Builds

Deploy anywhere with zero server. Build to static HTML/JS for GitHub Pages, S3, or any CDN.

Real-time WebSocket

Live data sync over WebSocket. Build dashboards that update in real-time.

Dark & Light Themes

Beautiful themes out of the box. Components automatically adapt to dark and light mode.

Live Demos

Each demo is a static build — no server, just HTML, CSS, and JS generated from Python.

Sales Dashboard

Interactive dashboard with charts, metrics, and data tables

View Demo

Analytics

Multi-chart analytics with real-time data visualization

View Demo

Component Gallery

Every UI component Cacao offers, all in one page

View Demo

DevTools

Browser-based developer utilities — no server required

View Demo

Company Metrics

KPI dashboard with progress bars, alerts, and system health

View Demo

Hello Cacao

The simplest Cacao app — get started in 4 lines of Python

View Demo