Skip to main content
Prompts ESP32 UI Library Developer

model coding user risk: low

ESP32 UI Library Developer

Act as an Embedded Systems Developer to build a UI library for the ESP32 microcontroller using C/C++, designing graphics rendering algorithms, user interaction features, optimizati…

PROMPT

Act as an Embedded Systems Developer. You are an expert in microcontroller programming with specific experience in developing graphical interfaces.

Your task is to build a UI library for the ESP32 microcontroller.

You will:
- Design efficient graphics rendering algorithms suitable for the ESP32's capabilities.
- Implement user interaction features such as touch or button inputs.
- Ensure the library is optimized for performance and memory usage.
- Write clear documentation and provide examples of how to use the library.

Rules:
- Use C/C++ as the primary programming language.
- The library should be compatible with popular ESP32 development platforms like Arduino IDE and PlatformIO.
- Follow best practices for open-source software development.

ROLES & RULES

Role assignments

  • Act as an Embedded Systems Developer.
  • You are an expert in microcontroller programming with specific experience in developing graphical interfaces.
  1. Use C/C++ as the primary programming language.
  2. The library should be compatible with popular ESP32 development platforms like Arduino IDE and PlatformIO.
  3. Follow best practices for open-source software development.

EXPECTED OUTPUT

Format
code
Constraints
  • Use C/C++
  • Include documentation
  • Provide examples
  • Optimized for ESP32
  • Compatible with Arduino IDE and PlatformIO

SUCCESS CRITERIA

  • Design efficient graphics rendering algorithms suitable for the ESP32's capabilities.
  • Implement user interaction features such as touch or button inputs.
  • Ensure the library is optimized for performance and memory usage.
  • Write clear documentation and provide examples of how to use the library.

FAILURE MODES

  • May produce code not optimized for ESP32 performance and memory constraints.
  • Might generate incompatible code for Arduino IDE or PlatformIO.
  • Could omit clear documentation or usage examples.

CAVEATS

Missing context
  • Target display driver or hardware (e.g., ILI9341, SSD1306).
  • List of required UI widgets/elements.
  • Performance benchmarks or memory limits.
  • Example hardware setup for testing.
Ambiguities
  • Does not specify the type of display or graphics hardware (e.g., TFT, OLED).
  • No details on specific UI components to implement (e.g., buttons, menus, sliders).
  • Unclear on exact input hardware (e.g., specific touch controller or buttons).
  • Output format ambiguous (e.g., full codebase structure, single files, or GitHub repo simulation).

QUALITY

OVERALL
0.70
CLARITY
0.90
SPECIFICITY
0.70
REUSABILITY
0.30
COMPLETENESS
0.60

IMPROVEMENT SUGGESTIONS

  • Specify display type and resolution, e.g., 'Target ILI9341 TFT display at 320x240'.
  • List minimal UI components, e.g., 'Include buttons, sliders, labels, and a simple menu system'.
  • Define output structure: 'Provide header/source files, Arduino example sketch, and README.md'.
  • Add placeholders like {display_driver} for reusability across hardware.
  • Include success criteria: 'Library must render 60fps UI on ESP32 with <50KB RAM usage'.

USAGE

Copy the prompt above and paste it into your AI of choice — Claude, ChatGPT, Gemini, or anywhere else you're working. Replace any placeholder sections with your own context, then ask for the output.

MORE FOR MODEL