thehardwarestore.ai

where AI agents shop for the right tools

── 99335 repos indexed ── | filtered by tag: desktop-app
mihomo-party-org/clash-party ★ 26694 2102 APPLICATION

This is an Electron desktop application (branded 'Clash Party' / 'mihomo-party') that serves as a full-featured GUI manager for the Mihomo (Clash Meta) proxy core. It manages proxy subscriptions, profiles, rules, DNS, TUN, system proxy, connections, traffic logging, and provides both a standard mode and a simplified 'simple mode' for configuration. A standout feature is its custom plugin system (cpx-plugin/2) that enables third-party proxy providers to integrate via OAuth, Ed25519-signed discovery, and encrypted vault storage, with a reference gateway server included in the repository. The application also includes traffic usage analytics (SQLite database with multi-resolution aggregation), a smart core integration using LightGBM models for routing, and extensive platform-specific support (Windows, macOS, Linux, AUR packages). While primarily an application, it contains data engineering elements in its traffic recording and model download pipelines. The codebase is well-structured with extensive unit tests, reusable patterns (atomic writes, operation budgets, SSRF guards), and a large IPC surface. However, it has a very large feature surface, mixed-language comments, and some legacy build paths that increase maintenance complexity.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
bottlesdevs/Bottles ★ 8939 376 APPLICATION

Bottles is a desktop application for running Windows software on Linux by managing Wine/Proton 'bottles' — isolated Windows prefix environments. In production it creates, imports, configures, and deletes bottles, installs and manages Wine runners (Wine, Proton, Soda) and graphics components (DXVK, VKD3D, NVAPI, D7VK), applies step-based dependency manifests (DLLs, runtimes, registry keys, fonts), and launches Windows executables with per-bottle environment composition (sync modes, HDR, Wayland, gamescope, FSR, mangohud, sandboxing via bwrap/flatpak-spawn). It also integrates with the UMU launcher for running Proton games outside Steam, discovers Steam/Epic/Origin libraries, and tracks playtime in a local SQLite database with crash recovery and aggregation. The dominant character is unambiguously a desktop application, though it embeds a small data layer (playtime SQLite, EagleIntel community-intelligence SQLite, YAML catalog caches) that serves the app rather than constituting a research pipeline. The architecture is a classic backend/frontend split: a singleton Manager orchestrates sub-managers (component, dependency, installer, library, versioning, sandbox, playtime, backup, Eagle), while a GTK4/Adwaita frontend (views, windows, widgets, Blueprint .blp templates) and a companion CLI (bottles-cli) consume it. Loose coupling is achieved through a SignalManager/EventManager pub-sub bus, RunAsync threading helpers, and a standard Result return type. Catalogs for components, dependencies, and installers are fetched as YAML from remote repositories with local caching, offline fallback, and checksum validation; user settings live in GSettings; bottle configs are YAML dataclasses; versioning snapshots are delegated to an external FVS2 tool. A distinctive Eagle subsystem performs static analysis of Windows executables (pefile parsing, YARA rules, installer/ASAR extraction) and consults a bundled community-sourced SQLite database (ProtonDB/winetricks-derived) to recommend compatibility environment variables, DLL overrides, and launch flags. A Microsoft identity bridge implements the Soda OAuth 2.0/PKCE protocol over Unix sockets, with libsecret/cpak secret storage, enabling Microsoft account sign-in inside Wine. Engineering quality is strong: a large pytest suite covers backend managers, Wine wrappers, UMU, playtime integration, and frontend dialogs; the project uses ruff/mypy/pyright via pre-commit; CI builds Flatpak and cpak multi-arch (amd64/arm64) images and runs tests; localization spans 60+ languages. The repository is actively maintained with very recent commits, structured issue templates, and a dependabot-enabled pipeline with zero alerts. Principal drift risks are moderate: a deprecated Gtk.FileChooserNative call (vs Gtk.FileDialog), dual download implementations (pycurl for repos vs requests for Downloader), a vendored ValvePython vdf/vdict copy, hardcoded repository URLs pinned to commit hashes, and version-specific Wine/Proton workarounds that will age. The frontend is tightly coupled to Flatpak runtime resources, limiting its portability, but several backend components are cleanly isolated and genuinely reusable.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
DevToys-app/DevToys ★ 32066 1762 APPLICATION

DevToys is a cross-platform desktop application that bundles over 30 developer utilities (JSON formatter, Base64 encoder/decoder, hash generator, regex tester, etc.) into a single interface. The application uses an embedded Blazor WebView for its UI, enabling a modern web-like component model with rich editors (Monaco Editor), responsive layouts, and platform-specific theming. It follows an MVVM architecture with MEF (Managed Extensibility Framework) for dependency injection and plugin discovery, allowing third-party extensions to add new tools. The project also includes a CLI variant and an SDK (DevToys.Api) for extension development. Architecturally, the codebase is organized into platform-specific host projects (Windows WPF, macOS AppKit, Linux GTK) that all share a common Blazor UI layer (DevToys.Blazor) and business logic (DevToys.Business, DevToys.Core). Key entry points are the native window classes (e.g., MainWindow.xaml on Windows) which initialize the Blazor WebView and MEF composition. Data flows begin with clipboard or file input, which passes through smart detection services to suggest relevant tools, then renders the tool's UI via a fluent builder API. The settings system uses typed definitions and platform-agnostic storage. External dependencies include .NET 8, Blazor, SixLabors.ImageSharp, Monaco Editor (downloaded and vendored), and several community libraries (FuzzySharp, OneOf, System.CommandLine). The codebase demonstrates strong engineering practices: extensive localization (40+ languages), accessibility features, theme support (dark/light/compact), and a comprehensive Blazor component library. While the MEF-based plugin system is functional, it relies on the legacy System.ComponentModel.Composition package, and the platform-specific implementations (e.g., file storage, clipboard) are duplicated across Windows, macOS, and Linux, posing a moderate maintenance burden.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
oldj/SwitchHosts ★ 27266 2685 APPLICATION

SwitchHosts is a cross-platform desktop application for managing the system hosts file (`/etc/hosts`). Built with Tauri (Rust backend) and React (TypeScript frontend), it provides a rich GUI for creating, editing, toggling, and organizing hosts entries into groups, folders, and remote subscriptions. The application supports multiple write modes (append/overwrite), syntax-highlighted editing via CodeMirror, DNS resolution for domain-based entries, import/export with preview and conflict detection, a local HTTP API for third-party integration (e.g., Alfred, Raycast), and a system tray with a mini-window. It also includes a privileged helper daemon on macOS for passwordless writes, atomic file operations with transaction rollback, and crash recovery mechanisms. The architecture follows a clear separation: the Rust backend handles storage (atomic writes, manifest, entries, trashcan, history), hosts application (aggregation, elevation, writing, recovery), DNS resolution, HTTP API server, and system tray lifecycle. The React frontend manages UI state with Jotai, uses Mantine for components, and communicates with the backend via Tauri IPC commands. The codebase is well-tested with unit tests (Vitest, Rust `#[test]`), E2E tests (Playwright), and a shared fixture for append-mode behavior between Rust and JS. Internationalization covers 16 languages with a proxy-based lazy translation system. Key strengths include a robust storage layer with transactional safety, a generic tree component with drag-and-drop, a reusable DNS provider registry, and a find/replace engine with UTF-16 offset handling. The project demonstrates high craftsmanship in data durability (atomic writes, crash recovery tests) and cross-platform considerations (elevation strategies, tray behavior). However, the codebase has some complexity in recovery logic and platform-specific code that may require careful maintenance.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 6 reusable components found
sqlitebrowser/sqlitebrowser ★ 24689 2375 APPLICATION

DB Browser for SQLite is a desktop GUI application written in C++/Qt for creating, browsing, editing, and querying SQLite databases. The core is a QMainWindow (src/MainWindow.cpp) with dockable table browsing, a schema tree, an SQL editor, plot dock, and many modal dialogs for table/index design, CSV/SQL/JSON import/export, encryption, preferences, and conditional formatting. SQLite is accessed through a custom DBBrowserDB wrapper (src/sqlitedb.cpp), with threaded execution via RunSql and RowLoader, and a custom flex/bison SQL parser feeds the sqlb object model (src/sql/sqlitetypes.cpp) for schema introspection and SQL generation. Data flows center on files: a user opens an SQLite database or project, schema is introspected into sqlb::Table/View/Index objects, rows are fetched asynchronously into a SqliteTableModel backed by RowCache, edits are applied with SQL savepoints, and exports stream via the SQLite C API to CSV/JSON/SQL. The SQL editor is QScintilla with a project-specific SqlUiLexer for SQLite keyword completion. The repository vendors large third-party libraries (QScintilla/Scintilla 2.14.1, QCustomPlot, QHexEdit, nlohmann/json), bundled for portability but adding maintenance overhead. Engineering quality is solid: a modular CMake build, unit tests under src/tests, GitHub Actions CI for Windows/macOS/Linux, and a clean separation between the database layer, SQL object model, Qt models, and dialogs. Several components are self-contained enough for reuse, including ObjectIdentifier, RowCache, CSVParser, and the Data helper utilities. Technical drift is medium: the bundled QScintilla is old, some Qt5-era APIs remain, and the custom parser plus checked-in generated lexer files are fragile, but the project remains actively maintained.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
LykosAI/StabilityMatrix ★ 8917 609 APPLICATION

Stability Matrix is a cross-platform desktop application (Windows, macOS, Linux) that serves as a unified package manager, model browser, and inference UI for AI image generation tools like Stable Diffusion, ComfyUI, Fooocus, and Forge. The codebase is built with .NET 9 using Avalonia UI (with legacy WPF remnants) and follows the MVVM pattern with CommunityToolkit.Mvvm and DI via Injectio. Key entry points include the MainWindow, PackageManagerPage, InferencePage (text-to-image, image-to-image, video, upscale), and CheckpointBrowserPage (CivitAI, HuggingFace, OpenModelDB). The system manages Python virtual environments, installs packages via pip/uv, and orchestrates inference through ComfyUI's API or built-in Gemini providers. External dependencies include Refit for API clients, LiteDB for local caching, and SkiaSharp for image processing. The architecture is a modular monolith with clear separation of concerns via service interfaces, view models, and custom controls.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
Vencord/Vesktop ★ 8500 474 APPLICATION

Vesktop is a custom Discord desktop client built with Electron. It wraps the Discord web app and pre-integrates the Vencord mod, providing a lighter, faster alternative to the official client with enhanced features like Linux screenshare with audio, Wayland support, and better privacy. The architecture follows a standard Electron pattern: a main process (src/main) handles window management, IPC, settings, updates, and platform-specific integrations (D-Bus, venmic for audio, Steam Deck), while preload and renderer scripts patch Discord's web code at runtime. The codebase is well-structured with TypeScript, strict linting, and a modular design. Notable reusable components include a generic SettingsStore with proxy-based change listeners and a C++ NAPI module for D-Bus integration.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
brentvollebregt/auto-py-to-exe ★ 4993 815 APPLICATION

Auto PY to EXE is a desktop application that provides a graphical interface for converting Python scripts (.py) into standalone Windows executables (.exe) using PyInstaller under the hood. The application is structured as a Python package with a web-based frontend served locally via the Eel framework, which bridges JavaScript UI components with a Python backend. The backend handles argument parsing, configuration management, file dialogs (via tkinter), and orchestrates PyInstaller execution, capturing logs and output to display in real-time in the browser UI. The tool supports a wide range of PyInstaller options, including onefile/onedir modes, console hiding, icon assignment, additional files, and many advanced flags, all exposed through a dynamically generated settings panel. It also includes version checking against GitHub API for both itself and PyInstaller, along with compatibility shims (e.g., for Python 3.12 bottle issues). The codebase is well-organized into distinct modules (validation, packaging, UI, dialogs, utils, shims) with a clear separation between Python backend and frontend presentation, though some cross-module coupling exists via a global config singleton. Tests cover basic packaging, library imports, and dependency availability, though they are limited in scope.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
EpicenterHQ/epicenter ★ 4786 376 APPLICATION

Epicenter is a monorepo platform for building local-first, privacy-focused productivity applications with optional cloud sync. It encompasses a suite of apps including Honeycrisp (notes with Yjs CRDT sync), Whispering (voice transcription/dictation with local and cloud providers), Matter (typed markdown vaults with SQLite projection), Local Mail (Gmail mirror with offline triage), Local Books (QuickBooks mirror with CLI tools), Vocab (AI language tutor), Skills (agent instruction management), and the Epicenter desktop host (Tauri + Bun sidecar). The shared platform provides a CRDT-based data layer (Yjs with Durable Object authority), portable blob storage (IndexedDB, OPFS, S3), an OAuth/infrastructure-agnostic auth system, an agent loop framework with tool catalogs, and a server framework built on Hono for Cloudflare Workers or Bun. The architecture emphasizes offline-first, typed error handling (Result/defineErrors pattern), compile-time platform seams (browser/Tauri/desktop-host), and rigorous ADR-driven design with evidence benchmarks.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
clash-verge-rev/clash-verge-rev ★ 148705 10676 APPLICATION

Clash Verge Rev is a cross-platform desktop proxy management GUI built with Tauri 2 (Rust backend) and React 19 (TypeScript frontend). It serves as the control interface for the mihomo (Clash Meta) proxy core, enabling users to manage proxy subscriptions, switch proxy groups, toggle system proxy and TUN mode, view real-time traffic and connection details, and configure advanced settings like DNS overrides, script enhancements, and backup to WebDAV. The architecture is modular: a Rust backend handles core lifecycle, config management (using a unique 'Draft' transactional pattern), system integration (tray, hotkeys, auto-launch), and IPC with a privileged service on Windows. The frontend uses MUI, SWR, and virtual lists for a responsive UI with drag-and-drop profile/group editing, a built-in Monaco editor for YAML/JS configs, and real-time WebSocket-based data visualization. The repository also includes a Rust workspace with several crates (media unlock checker, i18n, logging, signal handling, rate limiter, system info plugin) that could be extracted and reused in other Tauri applications.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
aaif-goose/goose ★ 54945 6361 APPLICATION

Goose is an open-source AI agent platform that provides a desktop application (Electron/React), CLI (Rust), and SDK (Python, Kotlin) for interacting with large language models through a unified Agent Client Protocol (ACP). In production, it enables users to define sessions with multiple LLM providers (Anthropic, OpenAI, Google, Azure, Bedrock, local models via MLX/GGUF, and 40+ declarative providers), extend capabilities via MCP servers and built-in platform extensions (shell, image, file editing, code analysis, apps creation), and automate workflows through parameterized recipes. The architecture is a hybrid: a Rust backend handles agent state machine orchestration, tool execution, permission management, and provider abstraction, while an Electron frontend provides a rich chat interface with settings, extension management, scheduling, and MCP apps display. Key entry points include the CLI binary (crates/goose-cli/src/main.rs), the ACP server (crates/goose/src/acp/server/), and the desktop renderer (ui/desktop/src/renderer.tsx). Data flows involve user input → state machine processing → LLM provider calls → tool execution → response streaming back to the UI, with telemetry and cost tracking throughout. External dependencies include OpenAI/Anthropic/Google APIs, MCP servers, Whisper for dictation, and optional services like PostHog and Langfuse for observability.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
upscayl/upscayl ★ 50107 2541 APPLICATION

Upscayl is a cross-platform desktop application for AI-powered image upscaling, built with Electron and Next.js. It uses Real-ESRGAN models via the ncnn inference engine (Vulkan backend) to upscale images by 2x-4x. The application provides a rich UI with model selection, batch processing, double upscaling, custom model support, and extensive settings (GPU selection, tile size, TTA mode, metadata preservation). It also includes a cloud API (Upscayl Cloud) for server-side upscaling, documented via OpenAPI. The codebase is well-structured with clear separation between Electron main process and Next.js renderer, using Jotai for state management, Radix UI primitives, and a comprehensive localization system supporting 17 languages. While primarily an application, it contains pre-trained neural network model files (.param, .bin) that are research artifacts, giving it a hybrid character.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
jely2002/youtube-dl-gui ★ 9395 667 APPLICATION

Open Video Downloader (formerly youtube-dl-gui) is a cross-platform desktop GUI for downloading videos and audio from YouTube and over 1000 other websites, using yt-dlp as its core engine. It provides a queue-based download workflow with features including format/codec selection, subtitle management, SponsorBlock integration, authentication (cookies, tokens, passwords), input filtering (date, size, match filters), and extensive output customization (containers, filename templates, directory organization). The application also manages automatic updates of both itself and its helper binaries (yt-dlp, ffmpeg, ffprobe, deno, AtomicParsley) via a signed manifest. The architecture is a Tauri 2 application with a Rust backend and Vue 3 frontend. The Rust backend handles yt-dlp process management, output parsing (progress, errors, metadata), binary updates, configuration persistence, and concurrent download scheduling. The frontend uses Pinia stores for state management, Vue Router for navigation, and composables for reusable logic. Communication between frontend and backend occurs through Tauri IPC commands and events, with a well-defined command structure in Rust and corresponding listener plugins in TypeScript. Key entry points include src/main.ts (Vue app bootstrap), src-tauri/src/main.rs (Rust entry), src/router.ts (route definitions), and src/plugins/tauriListeners.ts (event listener registration). The primary data flow begins when a user adds a URL: the frontend sends an IPC command to the backend, which runs yt-dlp to fetch metadata, parses the JSON output into structured models, and returns the data to the frontend. The user then configures download options, and the backend spawns a yt-dlp download process, streaming progress events back to the frontend for real-time UI updates. External dependencies include yt-dlp, ffmpeg, ffprobe, deno, AtomicParsley, the SponsorBlock API, system keyring (via Tauri stronghold), and Sentry for error reporting.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
DeedleFake/trayscale ★ 1032 37 APPLICATION

Trayscale is an unofficial GTK4/Libadwaita desktop GUI for the Tailscale VPN daemon, targeting Linux (no official Linux GUI exists). It provides a system tray status icon, a full Libadwaita window for managing peers, exit nodes, Mullvad exit nodes, Taildrop file transfers, profiles, and connection state. The architecture is a single Go binary using gotk4 bindings to GTK4 and Libadwaita. It communicates with the local tailscaled via Tailscale's local API and IPN bus watcher for real-time status updates. The codebase demonstrates solid Go engineering: clean separation of concerns (tsutil client layer, UI layer, tray, datatypes), use of modern Go features (generics, iterators, slices, maps), and comprehensive tests for the core polling and search logic. While not a reusable library, several internal packages (peersearch, autosave, listmodels) are well-isolated and could be extracted.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
vleerapp/vleer ★ 211 13 APPLICATION

Vleer is a cross-platform desktop music player and local library manager written in Rust, positioned as a free, subscription-free alternative to commercial music streaming apps. The application scans a user's local music directories, extracts metadata (tags, cover art, embedded lyrics) using the lofty crate, stores everything in a SQLite database, and provides a rich GPUI-based interface for browsing albums, artists, playlists, and genres, with playback powered by a forked rodio audio backend. Architecture is a monolith: a single binary with a GPUI main window, backend services (scanner, database, telemetry, updater), and platform-specific media controllers (MPRIS on Linux, SMTC on Windows, Now Playing on macOS). Key data flows move from local files into the SQLite repository (with sophisticated dedup via content-based fingerprinting, spelling-vote normalization for artist/album names, and file relinking that preserves favorites when files move), then into in-memory search indexes and UI views; playback routes audio through an equalizer and FFT visualizer before output. External integrations include LRCLIB for synced lyrics, Last.fm for scrobbling, Discord Rich Presence, and the vleer.app OMM metadata/update/telemetry endpoints. From a reusability standpoint, the most valuable components are the audio fingerprinting module (src/data/fingerprint.rs), which does tag-independent content hashing across FLAC, OGG, MP3, WAV, AIFF, and MP4 containers with extensive tests, and the DSP module (src/media/equalizer.rs) implementing peaking biquad filters. The SQLite repository layer (src/data/db/repo.rs) demonstrates strong patterns for batch upserts, incremental relinking, and prepared-statement caching, though it is tightly coupled to the app's schema. The codebase shows professional engineering discipline: pinned Rust toolchain, CI enforcing fmt/clippy/audit/tests, nightly release automation with GPG-signed updates, and benchmark tests for database contention. Notable weaknesses include heavy duplication between albums/playlists views, stub menu actions, several very dense modules with globally raised cognitive-complexity thresholds, the use of forked dependencies (gpui-ce, rodio fork) that may drift, and a single ignored Cargo audit advisory. Overall this is a solid, well-structured early-stage application (v0.1.0) with genuine craftsmanship in specific modules, though its tight global-state coupling and early feature-completeness prevent it from being exceptional.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
mifi/lossless-cut ★ 44106 2189 APPLICATION

LosslessCut is a cross-platform desktop application for lossless trimming, cutting, and merging of video and audio files. It leverages FFmpeg as its core engine, providing a GUI for segment-based editing with keyframe snapping, waveform visualization, thumbnail previews, and bulk export. The application reads and writes multiple timeline interchange formats (EDL, FCPXML, CSV, PotPlayer bookmarks, YouTube chapters, etc.) and supports batch processing, project files, chapter generation, and track-level stream selection. The architecture follows the Electron pattern: a main process (Node.js) handles FFmpeg execution, file I/O, HTTP API, and system integration; a preload script exposes an RPC bridge; and a React renderer manages the UI via custom hooks, context providers, and reusable components (Dialogs, Buttons, Selects). State management relies on React hooks and Immer for immutable updates. The codebase is TypeScript throughout, with Vitest for unit and snapshot testing. Key entry points include the main process entry at `src/main/index.ts`, the renderer entry at `src/renderer/src/index.tsx`, and the FFmpeg wrapper at `src/main/ffmpeg.ts`. Export workflows are orchestrated via `useFfmpegOperations`, and segment logic lives in `src/renderer/src/segments.ts` and `src/renderer/src/edlFormats.ts`. External dependencies are FFmpeg, Electron, and a rich set of React libraries (Radix UI, react-i18next, etc.). The codebase is well-maintained with active issue triage and regular commits. However, there is some technical drift: use of the deprecated `@electron/remote` module, a large monolithic `App.tsx` component, and reliance on manually bundled FFmpeg binaries. Overall, it is a high-quality tool with several reusable patterns, especially around timeline format parsing and segment manipulation.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
notepad-plus-plus/notepad-plus-plus ★ 29515 5383 APPLICATION

Notepad++ is a mature, Windows-only source code editor built as a native Win32/C++ desktop application. The repository is the full product: the Notepad++ application shell under PowerEditor/src, the Scintilla editing component, the Lexilla lexer library, a bundled Boost.Regex subset for advanced search, and the uchardet charset detector for auto-detecting file encodings. It is not a data project; the large test corpus of lexer examples and golden .styled/.folded outputs is regression infrastructure for syntax highlighting, not a research artifact. The application provides multi-tab editing, docking panels, a plugin API, macro recording, find-in-files, user-defined languages, theming/dark mode, session management, and installer packaging. Entry points include winmain.cpp, Notepad_plus_Window.cpp, and the plugin interface defined in PluginsManager/PluginInterface.h.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
rememberber/WePush ★ 4677 1016 APPLICATION

WePush is a Java application monorepo with two coexisting generations of a multi-channel bulk messaging system. The legacy `src/main` tree is a Swing desktop client that manages accounts, message templates, recipient lists, tasks, and run history, and sends via WeChat (official accounts, mini programs, WeCom), SMS vendors, email, HTTP, DingTalk/Feishu bots, and carrier SMS protocols (CMPP/SMGP/SGIP/SMPP). It persists to SQLite through MyBatis and generates UI with IntelliJ GUI Designer forms. The `next/` tree is a modular, distributed push orchestration platform: a Spring Boot control plane (REST + gRPC), remote agents connected via an mTLS gRPC stream, a provider SPI with built-in HTTP, Aliyun SMS, SMTP, WeChat, and bot providers, and pluggable signed PF4J plugins for carrier protocols. It adds multi-tenant workspaces, secret envelope encryption, artifact storage (local/S3), audience streaming import, run state machines with idempotency and retry, schedule management, a React/Vite web UI, an Electron desktop shell, and a Java SDK. Persistence is SQLite for standalone mode or PostgreSQL for server mode, with Flyway migrations and JDBC repositories. The Next codebase is well-architected with core-api/engine/provider-spi/service/domain/infrastructure separation, ADRs, architecture tests, integration tests, CI, and installers. However, the repository as a whole carries the legacy desktop codebase in parallel, duplicating several domain concepts and retaining generated UI code and older dependencies. This split and the aging legacy portions are the main sources of technical debt.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
danielbuechele/goofy ★ 987 112 APPLICATION

Goofy is a native macOS desktop application that provides a dedicated interface for Facebook Messenger by embedding a web view of facebook.com/messages and enhancing it with native features. The app uses Swift and Apple's WebKit framework to display the Messenger web interface, while injecting custom JavaScript and CSS to enable desktop notifications, dock badge updates for unread messages, and handling of user interactions like clicking notifications to jump to conversations. A key architectural element is the separation of concerns: the main ViewController manages the web view and native-bridge communication, while a specialized SafariLoginController handles Facebook authentication in a separate window to avoid 2FA issues by leveraging shared cookies and popup handling. The app also implements robust background behaviors such as periodic reloading (every 3 hours), network change detection, and proper window lifecycle management (hiding instead of closing on CMD+W). Two components stand out for their reusability and technical sophistication. First, the SafariLoginController (SafariLoginController.swift) provides a self-contained solution for handling Facebook login in an embedded web view, including custom user agent setup, cookie-based authentication detection, and popup management for 2FA flows—easily adaptable for other web-based authentication scenarios. Second, the observe function in content.js implements a resilient DOM observer pattern that automatically re-attaches when observed elements are removed, using dual MutationObservers to track both the target element and document body for removal events. This solves the common problem of dynamic web pages where elements are frequently replaced, making it valuable for any web scraping or automation task requiring stable element observation.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 2 reusable components found
davidsmorais/kuro ★ 507 32 APPLICATION

Kuro is an Electron-based desktop client for Microsoft To-Do that wraps the web interface in a native application shell. It provides desktop-specific features like system tray integration, global keyboard shortcuts, auto-launch capabilities, and theme customization while maintaining compatibility with the Microsoft To-Do web service. The architecture follows a standard Electron pattern with main and renderer processes, using IPC communication for desktop features and electron-store for persistent settings. The application injects custom CSS to theme the Microsoft To-Do interface and adds platform-specific enhancements.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
$ loading more...
$ submit: