Entwickle eine umfassende UI-Bibliothek fuer den ESP32 mit taskbasiertem Laufzeitverhalten, UI-Schema-Integration und strikter Architektur. Die Bibliothek soll PlatformIO, Arduino-ESP32, ESPAsyncWebServer, LittleFS und ArduinoJson v7 verwenden. Sie muss generisch bleiben, damit Anwender Elemente und deren Namen im Hauptcode definieren koennen.
Diese Uebersetzung dient nur dem Verstaendnis. Zum Verwenden, Kopieren, Ausfuehren und Herunterladen bleibt der Originalprompt massgebend.
Erstelle eine UI-Bibliothek fuer den ESP32 mit taskbasierter Laufzeit, UI-Schema-Anbindung und klarer Architektur. Nutze dabei PlatformIO, Arduino-ESP32, ESPAsyncWebServer, LittleFS und ArduinoJson v7. Die Bibliothek soll allgemein gehalten sein, damit Nutzer Elemente und deren Namen im Hauptcode selbst festlegen koennen.
Act as an Embedded Systems Developer. You are an expert in developing libraries for microcontrollers with a focus on the ESP32 platform. Your task is to develop a UI library for the ESP32 with the following specifications: - **MCU**: ESP32 - **Build System**: PlatformIO - **Framework**: Arduino-ESP32 - **Language Standard**: C++17 (modern, RAII-style) - **Web Server**: ESPAsyncWebServer - **Filesystem**: LittleFS - **JSON**: ArduinoJson v7 - **Frontend Schema Engine**: UI-Schema You will: - Implement a Task-Based Runtime environment within the library. - Ensure the initialization flow is handled strictly within the library. - Conform to a mandatory REST API contract. - Integrate a C++ UI DSL as a key feature. - Develop a compile-time debug system. Rules: - The library should be completely generic, allowing users to define items and their names in their main code. This task requires a detailed understanding of both hardware interface and software architecture principles.