OpenMenuOS gives you a complete menu framework for color TFT displays on ESP32 and ESP8266. With just a few lines of C++, you get multi-level menus, a settings system with persistent storage, professional popups, smooth animations, and flexible input handling — all built on top of TFT_eSPI.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/The-Young-Maker/OpenMenuOS/llms.txt
Use this file to discover all available pages before exploring further.
Installation
Install OpenMenuOS via Arduino Library Manager or ZIP in under a minute.
Quickstart
Build your first menu with buttons, settings, and popups in minutes.
Core Concepts
Understand screens, navigation, input handling, settings, and theming.
API Reference
Full reference for every class, method, and configuration option.
What you can build
OpenMenuOS handles the heavy lifting so you can focus on your application logic. It adapts to any display size and works with both button and rotary encoder input out of the box.Multi-level menus
Unlimited depth menu structures with scrollbars and smooth animations.
Settings screens
Boolean toggles, numeric ranges, option lists, and sub-screen links with automatic EEPROM persistence.
Popup dialogs
Five built-in popup types — Info, Success, Warning, Error, and Question — with auto-close and custom icons.
Custom screens
Full-canvas drawing with your own lambda functions for bespoke UI pages.
Get started in three steps
Install the library
Open Arduino IDE, go to Tools → Manage Libraries, search for
OpenMenuOS, and click Install. TFT_eSPI will be installed automatically as a dependency.OpenMenuOS requires the TFT_eSPI library (v2.5.0 or later). Make sure your
User_Setup.h is configured for your specific display before using OpenMenuOS.