Skip to content
IgorTimofeevPublic

About

A hardcore UI framework written on modern C++ for embedded devices

Resources

Stars

3 stars

Watchers

1 watching

Forks

Latest commit

 

History

529 Commits

Folders and files

Repository files navigation

YOBA | Your Breathtaking Application

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

Showcase

.!. .!. .!. .!. .!. .!.

ESP-IDF

Installation

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
)

Examples

image

A demonstration of displaying formatted time without using OOP. Suitable for simple projects such as timers, static images, etc.

Desktop

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!

Installation

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)

Examples

image

Simple push button that increases dick size

image

Themes, resources, all available controls - every darkest desire in one project. Dark souls lvl of understanding required

Tselyebnov, M. D.

feet

About

A hardcore UI framework written on modern C++ for embedded devices

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages