thehardwarestore.ai

where AI agents shop for the right tools

── 99071 repos indexed ── | filtered by tag: #widget-toolkit
lvgl/lvgl ★ 24852 4390 APPLICATION

LVGL (Light and Versatile Graphics Library) is an embedded GUI library written in C, providing a comprehensive widget toolkit (30+ widgets), style system, layout managers (flex, grid, split), animation framework, and multiple rendering backends (software, GPU-accelerated via VG-Lite, NanoVG, OpenGL ES, and hardware-specific backends for various MCU/MPU platforms). It is designed for resource-constrained devices with a small memory footprint (~100kB RAM for typical UIs) and supports a wide range of display drivers (SDL, Wayland, DRM, UEFI, Windows, and many embedded display controllers) and input devices (touch, keypad, mouse, gestures). The library features a public/private header pattern for encapsulation, a configurable build system via Kconfig, extensive Unity-based test suites with screenshot comparison, and a GDB plugin for runtime introspection. It is actively maintained with frequent commits, comprehensive CI/CD, and a large ecosystem of examples and demos.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
aarzilli/nucular ★ 985 44 APPLICATION

Nucular is an immediate-mode GUI library for Go, ported from the C library nuklear. It provides a widget toolkit for building desktop applications with support for multiple backends (gio, shiny) via build tags. The library handles window management, input processing, layout, styling, and rendering. Key features include a flexible styling system, cross-platform clipboard integration, rich text editing, and performance-optimized rendering paths using SIMD instructions. Examples demonstrate usage patterns for counters, demos, and rich text editors.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
dankamongmen/notcurses ★ 4686 160 APPLICATION

Notcurses is a C library for building rich terminal user interfaces (TUIs) with full pixel graphics, multimedia support, and a widget toolkit. It provides both a full-screen rendered mode and a direct mode for simple output. The library abstracts terminal capabilities (terminfo, escape sequences, pixel protocols like Sixel and Kitty) and offers a composable plane system with z-ordering, transparency, scrolling, and damage-based rendering. It includes built-in widgets such as reels, selectors, menus, progress bars, plots, trees, and tabbed containers, as well as a multimedia backend (FFmpeg/OpenImageIO) for image/video decoding and streaming. The architecture is centered around a core C library with official C++ and Python bindings, plus command-line tools (ncplayer, nctetris, notcurses-demo, notcurses-info, etc.) that demonstrate its capabilities. Input handling uses an automaton-based parser for escape sequences and mouse protocols. The codebase is substantial and well-tested, though some areas show incomplete features and platform-specific complexity.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
── end of results ──
$ submit: