๐ Getting started
August 17, 2026 ยท View on GitHub
This page is a router for the main pydevices-examples workflows. In every case, the underlying pattern is the same: connect to a display backend through board_config, draw to the frame buffer, subscribe to input events, and keep the runtime alive.
Try without installing
| Path | Guide |
|---|---|
| Browser demo | Try pydevices-examples โ PyScript |
| Wokwi simulator | Try pydevices-examples โ Wokwi |
Quick start (install locally)
| I haveโฆ | Start here |
|---|---|
| ESP32 or other MicroPython board | ESP32 board guide |
| Linux / macOS / Windows desktop | Desktop CPython |
| Browser + local PyScript dev | PyScript guide |
| Wokwi only (no local install) | Wokwi guide |
| CircuitPython board | CircuitPython platform |
| Jupyter notebook | Jupyter platform ยท Run interactively |
Learn the model
- App starter โ copy-paste template for your first app (display, clicks, main loop)
- pydevices_demo โ feature tour (rotation, scrolling, buffered text, multimer)
- Architecture โ how
board_config,displaydev, andeventsysfit together - Portability & platforms โ where pydevices-examples runs and how the backend is chosen
- Ecosystem & sister projects โ LVGL in Python, GUIs, Jupyter
- Installation overview โ MIP vs full clone vs TestPyPI / micropython-lib
A simple app usually follows this shape:
import board_config
from board_config import display_drv
import eventsys
runtime = eventsys.Runtime.from_board_config(board_config)
# draw once or on each refresh
# runtime.on(...)
runtime.run_forever()