A hardcore UI framework written on modern C++ for embedded devices
- Classic OOP-based approach without bullshit
- Tons of components like buttons, sliders, switches, spinners, text fields & scroll views
- Fully automatic layouts
- Animations & rendering transforms
- Event system for external peripherals like touch screens & keyboards
- Compact image & font format with a nice tool to convert your dick pics into production-ready projects
- A clear distinction between UI, renderers and rendering targets (screens, desktop windows, etc.), all of which can be used separately
- Monochrome, RGB 565/666/888, ARGB & indexed colors support
- Out-of-box drivers for the most popular displays like ILI9341, ST7789, ST7565, GC9A01, and SH1106
- HAL for easy integration of third-party MCUs
- SFML support for cross-platform testing
Clone the library into your project's components directory:
git clone https://github.com/IgorTimofeev/YOBA.git components/YOBA
Then add YOBA component into main/CMakeLists.txt. It should look like this:
idf_component_register(
SRCS main.cpp
INCLUDE_DIRS "."
# Here
REQUIRES YOBA
)
A demonstration of displaying formatted time without using OOP. Suitable for simple projects such as timers, static images, etc.
Since YOBA is hardware-independent, I thought it would be fun to add support for running it on Windows and Linux.
And SFML is perfect for such shit!
Clone the library into any directory of your project like lib or whatever:
git clone https://github.com/IgorTimofeev/YOBASFMLExample.git lib/YOBA
Then add YOBA into your main/CMakeLists.txt. It should look like this:
...
# YOBA
add_subdirectory(lib/YOBA)
target_link_libraries(${PROJECT_NAME} PRIVATE YOBA)
Simple push button that increases dick size
Themes, resources, all available controls - every darkest desire in one project. Dark souls lvl of understanding required