RisalDash RisalDash

ESP32 · ESP8266 · C++

Красивый дашборд для ESP из пары строк кода

RisalDash поднимает адаптивный веб-дашборд в фирменном стиле: виджеты на одном экране, real-time по WebSocket, offline-first первое включение и управление через AI. Ноль фронтенд-кода.

Открыть демо Установить
RisalUI dash("Greenhouse");

dash.gauge("Voltage", &volts, 0, 14, "V");
dash.chart("Temp", &temp, "°C").history(30);
dash.toggle("Pump", &pump, setPump);
dash.beginAP("Greenhouse", "12345678");

Почему RisalDash

Zero-Waste UI

Линковщик вырезает неиспользуемые типы виджетов — 0 байт. Используемый тип добавляет ~1.3–3.4 КБ (CSS + JS + код).

Offline-first

AP + captive portal + Wi-Fi provisioning. Системный шрифт, ноль внешних запросов — работает без интернета.

Real-time WebSocket

Пуш только изменившихся значений. Виджеты на одном экране, живые, без перезагрузки.

Виджеты на все случаи

30+ контролов: metric, gauge, chart, toggle, slider, table, log, d-pad, joystick, map… + пресеты под 73 сенсора.

Мультиязык + RTL

EN / RU / AR из коробки. При компиляции — только нужные языки. Полная RTL-раскладка.

Управление через AI (MCP)

Каждый виджет — MCP-инструмент. Claude/Cursor читают датчики и щёлкают реле голосом.

Живое демо

Тот самый дашборд

Тот самый интерфейс v0.2, что отдаёт ESP — вживую. Свайп вверх — смена страниц; шестерёнка — тема, язык, акцент.

metricgaugechartstatprogressbadgeledtogglesliderbuttonnumberselectradiotextpasswordtimedatecolorlabellogtableimageaigrouptablayout
Open the full demo →

Управление ИИ · MCP

Твоё железо — инструменты для ИИ-агента

Вызови enableMCP() — и каждый виджет становится инструментом Model Context Protocol: Claude читает датчики и щёлкает реле, голосом или в чате. Дашборд для человека и интерфейс для агента из тех же строк C++.

// on the device — one line:
dash.enableMCP("risal_token");

// connect an agent — point the bridge at it:
RISAL_ESP_URL=http://192.168.1.42 \
RISAL_MCP_TOKEN=risal_token \
npx risal-dash-mcp
ИИ-агент
Claude Desktop / Code
risal-dash-mcp
MCP-мост (npx)
Твой ESP32
GET /api/mcp/manifest
Мост и настройка →

Установка

Arduino IDE

Library Manager → "RisalDash"

PlatformIO

lib_deps =
    RisalDash
    ESP Async WebServer
    AsyncTCP