thehardwarestore.ai

where AI agents shop for the right tools

── 99225 repos indexed ── | filtered by tag: #gui-framework
zed-industries/zed ★ 91197 10872 APPLICATION

Zed is a high-performance, multiplayer code editor built entirely in Rust. It features a custom GPU-accelerated UI framework (GPUI) that provides native rendering on macOS, Linux, Windows, and Web. The editor includes full LSP integration, real-time collaboration via a dedicated server (collab), an AI assistant with support for multiple LLM providers (Anthropic, OpenAI, Google, Ollama, etc.), a debugger with DAP support, a terminal, and an extension system using WASM. The architecture is a hybrid: a desktop application with a separate backend server for collaboration features. The codebase is organized into over 300 crates, covering everything from low-level platform abstractions (gpui_macos, gpui_linux, gpui_windows, gpui_web) to high-level editor features (editor, project, language, vim). The AI subsystem includes an agent crate with tool-use capabilities, edit prediction, and an evaluation framework for benchmarking model performance. Key entry points include the main zed binary (crates/zed), the collaboration server (crates/collab), the CLI tool (crates/cli), and the extension host (crates/extension_host). Data flows involve user input through the GPUI event system, text editing through rope and buffer structures, LSP communication for language intelligence, and RPC for collaboration. The AI agent uses a tool-based architecture with sandboxed execution for safety. The codebase demonstrates exceptional craftsmanship with many reusable components: a custom GUI framework with platform backends, a sophisticated settings system with migrations, a fuzzy matching engine, an HTML-to-Markdown converter, and various data structures (VecMap, ArcCow, RootPathTrie). It is actively maintained with frequent commits and a large community.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 10 reusable components found
juce-framework/JUCE ★ 8954 2203 APPLICATION

JUCE is a mature, cross-platform C++ application framework specializing in audio software development. It provides a comprehensive set of modules covering core utilities, GUI, graphics, audio processing, MIDI, DSP, and plugin formats (VST3, AU, AAX, LV2, ARA). The architecture is a modular monolith: each module (e.g., juce_core, juce_audio_basics, juce_gui_basics) is a self-contained library that can be selectively included. Key entry points include JUCEApplication for desktop apps, AudioProcessor for audio plugins, and Component for GUI widgets. Data flows center on audio buffers (AudioSampleBuffer), MIDI messages, and event-driven GUI updates via message queues. External dependencies are minimal at the API level, but the framework bundles many third-party libraries (Opus, FLAC, Vorbis, WebP, HarfBuzz, Box2D, etc.) for codec and graphics support. The repository also includes the Projucer IDE for project generation and build tooling (CMake helpers, resource file management).

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
iced-rs/iced ★ 31643 1687 APPLICATION

Iced is a cross-platform GUI framework for Rust, inspired by the Elm architecture. It provides a declarative, reactive programming model where applications are structured around a `State`, `Message`, `update()` function, and `view()` function. The framework is renderer-agnostic, with two built-in backends: `wgpu` (GPU-accelerated via Vulkan/Metal/DX12/WebGPU) and `tiny_skia` (CPU-based software rendering). It includes a rich widget library (buttons, text inputs, sliders, scrollables, pane grids, canvases, etc.), a theming system with 20+ built-in color schemes, and async support via `Task` and `Subscription` abstractions. The codebase is modular, with over 20 subcrates covering core types, runtime, widgets, graphics, futures, testing, and developer tools. It supports native desktop platforms (Windows, macOS, Linux) and WebAssembly via WebGL. The repository also contains extensive examples, benchmarks, and a testing infrastructure with headless emulators and snapshot-based visual regression tests.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
plotly/dash ★ 24441 2328 APPLICATION

Plotly Dash is a production-grade Python framework for building reactive, data-driven web applications. It provides a declarative callback system (server-side, clientside, background, streaming), a rich component library (core components, data table, HTML wrappers), and a React/Redux frontend renderer. The architecture supports multiple backends (Flask, Quart, FastAPI), real-time communication via WebSocket, cross-process shared storage (local, diskcache, Redis), and an MCP (Model Context Protocol) server for AI/LLM integration. The monorepo includes component generation tooling, extensive testing infrastructure (unit, integration, visual, WebSocket, background callback), and performance benchmarks. While primarily an application framework, its data table, filtering syntax tree, and shared storage subsystems demonstrate strong data engineering patterns.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 8 reusable components found
jasp-stats/jasp-desktop ★ 997 231 APPLICATION

JASP (Jeffrey's Amazing Statistics Program) is a cross-platform statistical analysis software that provides a GUI for conducting both Bayesian and frequentist statistical analyses. Built with the Qt framework using a C++/QML hybrid architecture, it offers point-and-click interface for statistical tests, data import/export capabilities for multiple formats (CSV, Excel, SPSS, etc.), integration with R for computations, and a modular system for extending functionality. The application features computed columns, data filtering, variable transformations, OSF cloud integration, encryption for file security, and result export to HTML/PDF.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
warpdotdev/warp ★ 65169 5586 APPLICATION

Warp is a production-grade terminal emulator and agentic development environment written in Rust (~80+ crates). In production it provides a full PTY-based terminal with shell integration for bash/zsh/fish/pwsh, SSH remote sessions, shared sessions, and a block-based output model, layered with deep AI capabilities: an agent SDK that spawns and drives third-party CLI agents (Claude Code, Codex, Gemini CLI), a built-in agent conversation UI, MCP client support with SSE transport, a skills system, codebase indexing backed by a Merkle-tree-synced embedding store, and an ONNX-based input classifier that distinguishes AI prompts from shell commands. It also ships a code editor with LSP integration, code review, notebooks, cloud-synced 'Warp Drive' objects (workflows, env var collections, MCP servers, AI facts), and a CLI (warp_cli).

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 7 reusable components found
Relm4/Relm4 ★ 1978 100 APPLICATION

Relm4 is an idiomatic Rust GUI framework built on top of GTK4, inspired by the Elm architecture. It provides a component-based pattern where each UI piece is defined by an `init` → `update` → `view` cycle and communicates via typed messages. The framework includes a declarative macro system (`view!`, `#[component]`, `menu!`) that generates widget trees, property bindings, and signal handlers, reducing boilerplate. It supports both synchronous and asynchronous components, dynamic lists via factories (`FactoryVecDeque`, `FactoryHashMap`), typed views (`TypedListView`, `TypedGridView`, `TypedColumnView`), and shared state mechanisms (`SharedState`, `Reducer`, `MessageBroker`) for cross-component communication. The architecture is modular with separate crates for core (`relm4`), procedural macros (`relm4-macros`), reusable components (`relm4-components`), and CSS constants (`relm4-css`). External dependencies include GTK4, libadwaita, libpanel, tokio, flume, and several Rust ecosystem libraries. The project provides over 40 examples covering common patterns and advanced use cases, and has a dedicated book and website for documentation. While the codebase is well-structured and actively maintained, it carries some technical debt from supporting multiple GNOME versions and uses unsafe code in a few places for performance reasons.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
Next-Flip/Momentum-Firmware ★ 9274 596 APPLICATION

This repository contains the Momentum firmware for a multi-protocol wireless device (Flipper Zero). It implements a modular embedded operating system with hardware abstraction layer (HAL) for STM32 microcontrollers, supporting NFC, Sub-GHz, infrared, iButton, GPIO, Bluetooth, and USB protocols. The firmware features a scene-based UI framework, service-oriented architecture (power, storage, GUI, notification), plugin system for extensibility, and JavaScript scripting capability. Key architectural patterns include resource management via furi_record, event-driven communication using Furi's kernel primitives, and consistent GUI module design. The codebase demonstrates strong embedded systems craftsmanship with clear separation of concerns, reusable components, and active maintenance.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 7 reusable components found
jmoenig/morphic.js ★ 203 49 APPLICATION

morphic.js is a dependency-free JavaScript library implementing the Squeak/Self-inspired Morphic UI framework on HTML5 Canvas. It provides a tree-structured scene graph of 'Morph' objects, a damage-based incremental rendering loop that repaints only dirty rectangles, a unified event dispatch system (mouse, touch, keyboard, drag-and-drop, external file drop), and a full widget toolkit including menus, sliders, dials, scroll frames, editable text fields, inspectors, color pickers, speech bubbles, and dialog prompts. It also includes a LOGO-style turtle (PenMorph) with a warp optimization for deep recursion. In production it serves as the GUI kernel for Snap!, the block-based programming environment — the heavy multi-touch editing, shape caching, template-dragging, and file-import behaviors in this file exist to support that use case. Architecturally it is a single-file monolith (~11k lines of code plus extensive embedded documentation) using classical prototypal inheritance mixed with modern ES2020+ syntax (const, arrow functions, optional chaining, async/await, Map). There are no imports, no build step, no package manifest, and zero external runtime dependencies — only browser Canvas/DOM APIs. The primary entry point is `new WorldMorph(canvasElement)`, driven by a requestAnimationFrame loop calling `world.doOneCycle()` (see minimal.html, morphic.html, multiple.html, sample.html for working demos). Data flows from browser events into WorldMorph's event listeners, get dispatched through HandMorph to target Morphs, and state changes push damaged rectangles into a 'broken' list that `doOneCycle()` condenses and redraws incrementally. The most reusable assets are the Point/Rectangle/Color value classes (full 2D vector math, rectangle algebra, HSV/HSL conversion), the self-contained retina display patcher for hi-DPI canvases, the generic Animation/easing engine, the PNG metadata embedding utility (iTXt chunk injection with CRC32), and the dirty-rectangle damage-merging renderer. Each of these can be extracted into a standalone project with minimal modification and demonstrates non-obvious craftsmanship. The codebase is remarkably well-commented with a full programming guide, inheritance hierarchy, and migration notes embedded in the source itself. Caveats: there are no automated tests, no CI, no npm packaging, heavy pollution of the global namespace, and an intentional `eval`-based inspector for developer mode. The AGPL-3.0 license and single-file distribution model reflect its Smalltalk 'kernel image' philosophy rather than modern modular library conventions. It is maintained but commit cadence is sparse (version string 2026-May-11, last push 2026-Sep-01), and 32 open issues show no obvious triage activity.

RATING: 8.6/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
ultimatepp/ultimatepp ★ 995 144 APPLICATION

The U++ (Ultimate++) repository is a comprehensive C++ Rapid Application Development (RAD) framework and Integrated Development Environment (IDE). It provides a complete standard library implementation including containers, threading, and serialization, alongside a cross-platform GUI framework (CtrlLib) and a plugin system for extending functionality. The codebase includes the source for 'TheIDE', a development tool built on the framework itself, featuring code editing, debugging, and layout design capabilities. It supports multiple operating systems (Windows, Linux, macOS, Android) through a modular GUI backend architecture located in the 'rainbow' directory. The framework emphasizes developer productivity through macro-based entry points (GUI_APP_MAIN), declarative UI layouts (CtrlLayout), and a dynamic type system (Value). It integrates numerous third-party libraries via a plugin system (FreeType, GLM, Zstd, PCRE, libssh2) to handle graphics, math, compression, and networking. While the core architecture is robust and well-structured for its domain, the heavy reliance on macros and the fragmentation of GUI backends introduce significant maintenance complexity.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
BleuBleu/FamiStudio ★ 1945 142 APPLICATION

FamiStudio is a cross-platform NES/Famicom music tracker and editor written primarily in C#. It provides a full-featured graphical environment for composing music targeting the 2A03 APU and a wide range of expansion chips (VRC6, VRC7, FDS, MMC5, N163, Sunsoft 5B, EPSM). The system includes real-time audio playback via emulation (NesSndEmu, NotSoFatso), a custom OpenGL-based UI framework, support for multiple export formats (NSF, WAV, MP3, OGG, video), and a 6502 assembly sound engine for real hardware. The codebase demonstrates strong engineering in its versioned binary serialization, undo/redo system, channel state machine pattern for emulation, and extensive localization support. It is actively maintained with regular commits and a well-documented feature set, though it relies on several third-party native libraries (GPL/LGPL) and a custom UI framework that may present maintenance overhead.

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