What is ESP-GenUI?
ESP-GenUI is a visual diagramming tool for building ESP32-hosted web interfaces. You drag modules onto a canvas, wire them together, preview the page, then generate firmware code for your ESP32.
Answers for makers, prototypers, and embedded developers deciding whether ESP-GenUI fits their ESP32 project workflow.
ESP-GenUI is a visual diagramming tool for building ESP32-hosted web interfaces. You drag modules onto a canvas, wire them together, preview the page, then generate firmware code for your ESP32.
You can design the interface visually without writing everything by hand. Some projects may still need small callback edits, especially when connecting widgets to real sensors, outputs, or custom behavior. The goal is to help you build cool looking embedded interfaces, without having to become a UI expert.
Yes. Click Describe, type what you're building in plain English, and the app assembles a matching diagram — pages, cards, widgets, and the wiring between them — that you can then preview, edit, and generate code from like any hand-drawn one. It's a fast way to start instead of a blank canvas. Building a diagram this way uses one AI generation credit (the Free plan includes a daily allowance).
ESP-GenUI generates an Arduino sketch, or ESP-IDF source folder with files like demo.ino, Callbacks.h, EmbeddedSite.h, and/or main.c, etc. The generated code includes the web UI, route handlers, styling, and callback stubs.
Two ways. Download ZIP gives you a ready-to-open sketch folder and works in any browser. On Chrome or Edge you can also use Save to Folder, which writes the files straight into a folder on your disk — no unzipping — and remembers it, so your editor (Arduino IDE, VS Code, etc.) picks up changes in place each time you save. There's also a per-file Copy and Download if you just want one file.
Callbacks.h is the one file you're meant to edit, and its stubs are keyed to each node — so renaming things in the diagram won't detach the code you've written. When you regenerate, the built-in Diff/Merge tool lines up the freshly generated file against your version so you choose what to keep instead of losing your work. If you've used Save to Folder, that merge can even happen automatically when you save.
Yes. ESP-GenUI can compile the generated firmware server-side and flash it to an ESP32 over USB from the browser using Web Serial. You do not need the Arduino IDE/ESP-IDF installed on your computer in order to test the generated source. You can also download the source code ZIP and use the Arduino IDE, or PlatformIO environment yourself.
USB flashing requires a browser that supports the Web Serial API, so use a Chromium-based desktop browser such as Chrome or Edge. Sorry Firefox/Safari users, although you can do everything else.
The app targets ESP32-family Wi-Fi enabled boards and includes board selection support for many ESP32 variants. If you connect a board over USB, the app can detect chip information and choose an appropriate build target.
You can add pages, cards, layout containers (tabs, columns, modals), forms, buttons, gauges, charts, tables, sliders, steppers, toggles, selects, and color pickers; status displays like LEDs, badges, alerts, progress bars, a live log/console, and a device-info panel; a live camera feed; an NTP clock and a time-of-day scheduler; hardware I/O (GPIO, PWM, ADC, servos, NeoPixel/WS2812 strips); file managers and OTA upload controls; and connectivity such as WiFi setup flows, MQTT, WebSocket, mDNS, outbound webhooks, an HTTP Basic-Auth gate, and storage widgets — and more.
Yes. Some widgets generate direct firmware behavior for hardware like GPIO, PWM, ADC, servos, and NeoPixel/WS2812 strips. Other widgets expose callback stubs where you add your device-specific logic.
For many demo and simple workflows, yes: you can generate, compile, and flash in the browser. For deeper customization, you can still download the generated sketch and continue in the Arduino IDE or another editor. ESP-GenUI is NOT intended to be a replacement for your favorite development environment.
Yes. The built-in preview shows the web page your ESP32 will serve, using the same generated layout and styling, so you can adjust the design before compiling.
Yes. Signed-in users can save diagrams, reload them later, and export or import configuration files.
Credits meter the server-side actions: code generation, compiling, and AI diagram generation, each with its own daily pool. The Free plan includes a daily allowance of each (and you can buy top-up packs that never expire); the Pro plan lifts those caps.
The Free plan is intended for personal use. A Pro plan includes a commercial-use license and higher or unlimited limits. Intended commercial users Contact Us
No. You can download the generated project files and keep editing them outside the app. ESP-GenUI is a generator, not a closed runtime requirement.