Lively UI

Real-time UI, zero JavaScript

Lively is a real-time UI engine built into Duck. Components update over WebSockets without full page reloads — keeping your stack clean and predictable. No React. No Vue. Just Python.

Counter App Example

components/counter.py
python
# Simple counter implementation from duck.html.components.label import Label from duck.html.components.button import Button # Initialize counter counter = 0 # Build components label = Label(text=counter) button = Button(text='Increment') def on_click(btn, *_) -> None: global counter counter += 1 # Real-time update over WebSocket — no JavaScript needed label.text = counter button.bind('click', on_click, update_targets=[label])

Try Our Live Demo

Get Started in Seconds

Install Duck and scaffold a full project with a single command. No boilerplate hunting, no config files to set up manually.

terminal
bash
$ pip install duckframework $ duck makeproject myproject $ cd myproject $ python web/main.py # Starts server on http://localhost:8000

Read the full documentation