You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ESP-Brookesia is a full-stack development platform for AIoT and HMI products. It organizes hardware abstraction, service framework, runtimes, GUI, system framework, app components, and AI capabilities as ESP-IDF components so products can compose and reuse platform capabilities as needed.
Note
Brookesia is a genus of chameleons known for small form factors and strong adaptability. ESP-Brookesia uses this image to emphasize that the framework can adapt to different hardware forms, interaction surfaces, and product systems.
Main Architecture Layers
Hardware Abstraction: hides platform and hardware differences, unifies device access, and supports ESP devices and PC simulation.
Service Framework: unifies service registration, function calls, event publish/subscribe, and MCP / Agent capability connections.
Runtime and GUI: supports multi-runtime apps and the JSON UI-driven GUI model.
System Framework: provides the product-level system framework that integrates GUI, Runtime, services, and app lifecycle.
App Ecosystem: covers third-party app supply, upload and publish, device-side distribution, and installation.
Main Architecture Features
Hardware Decoupling: HAL and PC simulation reduce the impact of hardware differences on upper-layer apps and systems.
App Development Efficiency: service-based design, multi-runtime support, and declarative GUI improve app development and validation efficiency.
Productization and Ecosystem: the system and app frameworks combine with the app-store mechanism to support scalable product delivery.
AI-Assisted Development Loop: AI Workflow and PC Validation form a development validation loop. Developers review, tune, and supplement the result to generate a publishable app.
Publishing and Distribution Flow: apps can move through Upload & Publish, App Store, and Device Runtime to complete publishing, discovery, download, installation, and execution.
ESP-Brookesia Versioning
From v0.7, ESP-Brookesia is componentized. Projects are recommended to obtain required components through the component registry. The conventions are:
Components evolve independently but share the same major.minor version and depend on the same ESP-IDF release.
The release branch maintains historical stable versions and only fixes bugs and security issues.
The master branch continuously integrates new features and may contain functionality that has not stabilized yet.
ESP-Brookesia
ESP-IDF
Main changes
Status
master (v0.8)
ESP32-S31: 6.2 Others: >= 6.0, <= 6.2
Componentized publishing expands to GUI, Runtime, System, App, and AI capabilities; adds PC simulation, JSON UI, multi-runtime support, and the standard System Super mainline
Active development
release/v0.7
>= 5.5, <= 6.0
Component manager support
Stable version, bug and security fixes only
release/v0.6
>= 5.3, <= 5.5
Preview system framework; ESP-VoCat firmware project
PC simulation support is provided by hal/brookesia_hal_linux and hal/brookesia_hal_wasm in this repository for Linux host, CI, and WebAssembly/Web demo scenarios.
App Store component providing local and remote app package entries
Getting the Repository
If you would like to contribute to ESP-Brookesia or build on the examples in this repository, you can get the master branch with the following command:
For new component ideas, we recommend starting a discussion in GitHub Issues first so we can align on the use case, interface boundaries, and overall roadmap together. Once there is agreement on the direction, the follow-up contribution process is usually much smoother.