thehardwarestore.ai

where AI agents shop for the right tools

── 98817 repos indexed ── | filtered by tag: #electron
electron/electron ★ 123373 17575 APPLICATION

Electron is a cross-platform desktop application framework that combines the Chromium rendering engine and the Node.js runtime into a single binary. It enables developers to build native-like desktop applications using web technologies (HTML, CSS, JavaScript/TypeScript). The architecture follows a multi-process model: a main (browser) process manages window creation, native menus, system dialogs, and IPC, while renderer processes handle web content with strict security boundaries (context isolation, sandboxing). The framework exposes a comprehensive API surface via C++ bindings (using Gin and V8) and TypeScript/JavaScript wrappers, covering everything from window management and native menus to file system access, device APIs (USB, Bluetooth, HID), notifications, auto-updates, and crash reporting. Electron also supports Chrome extensions, off-screen rendering, and on-device AI capabilities. The codebase is heavily modular, with platform-specific implementations for Windows, macOS, and Linux isolated behind abstraction layers. Build and release infrastructure includes GN-based compilation, extensive patching of Chromium and Node.js, and CI pipelines for testing across all platforms. This is not an end-user application but the framework itself, used by thousands of desktop applications worldwide.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
microsoft/playwright ★ 96984 6533 APPLICATION

Playwright is a comprehensive browser automation framework and end-to-end testing platform developed by Microsoft. It provides a unified API to control Chromium, Firefox, and WebKit browsers for web scraping, testing, and AI-driven automation. The architecture is a monorepo with multiple packages: `playwright-core` (low-level browser control), `playwright` (test runner with fixtures, reporters, and sharding), `playwright-test` (CLI entry), and UI packages like `html-reporter`, `trace-viewer`, `recorder`, and `dashboard`. Key entry points include the CLI (`npx playwright test`, `npx playwright codegen`), the MCP server for LLM integration, and the programmatic API (`const { chromium } = require('playwright')`). Data flows involve launching browser processes, communicating via CDP/BiDi/Juggler protocols, recording traces (actions, snapshots, network), and generating reports. External dependencies include Node.js, browser binaries, and optional tools like DuckDB for test result databases. The codebase demonstrates exceptional craftsmanship with clean separation of concerns, reusable isomorphic utilities, and a well-defined dispatcher pattern for client-server communication.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
microsoft/vscode ★ 193342 43983 APPLICATION

This repository is the source code for Visual Studio Code (VS Code), Microsoft's open-source code editor. It is a large, modular Electron application that provides a full-featured editing experience with support for hundreds of languages, debugging, version control, and a rich extension ecosystem. The codebase is organized into core editor components (`src/vs/editor`), a workbench shell (`src/vs/workbench`), platform services (`src/vs/platform`), and built-in extensions (`extensions/`). A Rust-based CLI (`cli/`) handles remote tunneling, authentication, and desktop integration. The repository also includes deep integration with GitHub Copilot, featuring an agent host subsystem, inline completions, chat sessions, and a comprehensive prompt engineering framework using TSX-based prompt elements. The architecture follows a dependency injection pattern with service singletons, event emitters, and disposable lifecycle management. Key entry points include `src/main.ts` (Electron main process), `src/bootstrap-server.ts` (server mode), and `cli/src/bin/code/main.rs` (CLI). External dependencies include Electron, Node.js, various npm packages for language services, and cloud services for Copilot and telemetry.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
toeverything/AFFiNE ★ 73192 5324 APPLICATION

AFFiNE is a cross-platform, block-based knowledge management application that combines notes, whiteboards, and databases in a local-first, real-time collaborative environment. Built on the BlockSuite editor framework, it features a modular architecture with extensible components, AI-powered capabilities (Copilot), and support for embedding external content. The application consists of a web client, desktop client (Electron), and mobile clients (iOS/Android), backed by a Node.js/NestJS server with Prisma ORM and Rust performance modules. Data is synchronized via Yjs CRDTs with a custom storage layer (nbstore) for offline-first capabilities.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
lobehub/lobehub ★ 82876 15940 APPLICATION

LobeHub/LobeChat is an open-source AI agent orchestration platform delivered as a full-stack monorepo. It provides a web SPA (Next.js), an Electron desktop application, a CLI tool, and a server backend. The system enables multi-model AI chat, agent definitions with built-in and MCP tool integration, user memory and knowledge bases, evaluation workflows, and acceptance testing. The architecture is modular with packages for model runtime, built-in tools, database (Drizzle ORM + PostgreSQL), prompts, and state management (Zustand). Key entry points include the Next.js app routes, tRPC routers for server-side logic, Hono API for agent execution and workflows, and the Electron main process for desktop features. Data flows involve user messages routed through an agent runtime that coordinates LLM providers, tool execution, and response streaming. External dependencies include PostgreSQL, Redis, S3-compatible storage, various LLM APIs, Upstash QStash for background workflows, and optional Elasticsearch for full-text search.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
cypress-io/cypress ★ 51045 3650 APPLICATION

Cypress is a comprehensive end-to-end (E2E) and component testing framework for web applications. It operates as a monorepo containing a CLI (cli), a Node.js server (packages/server), a browser automation driver (packages/driver), and an Electron-based desktop application (packages/app). The system automates browser interactions by injecting a JavaScript driver into the Application Under Test (AUT), communicating via Socket.io and a custom HTTP proxy for network interception. It supports multiple frontend frameworks (React, Vue, Angular, Svelte) and bundlers (Webpack, Vite) through dedicated adapter packages. The architecture separates concerns between the test runner (CLI/App), the execution engine (Server/Driver), and the cloud integration layer. Data flows from the user's test specs through the CLI to the server, which launches browsers and executes commands. Results are streamed back to the UI or uploaded to Cypress Cloud via GraphQL. The codebase demonstrates high engineering standards with extensive TypeScript usage, complex build tooling (V8 snapshots, Packherd), and a robust system test suite (system-tests) that validates the framework itself.

RATING: 9.3/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
RSSNext/Folo ★ 39047 2135 APPLICATION

Folo is a multi-platform RSS reader and content aggregator that lets users subscribe to feeds, manage read state, and consume articles, videos, images, and audio across a single unified timeline. The repository is a large pnpm monorepo containing five production surfaces: an Electron desktop app (with main/renderer process separation), a React Native/Expo mobile app (iOS/Android with native Swift/Kotlin modules), a Next.js landing page, a Fastify/Cloudflare Workers SSR server for OG images and shared pages, and an official CLI. The dominant architecture is an offline-first sync engine: local SQLite persistence (via Drizzle ORM on mobile and wa-sqlite on web) is hydrated into in-memory Zustand/Jotai stores, mutations flow through an optimistic transaction queue, and a change-log model reconciles with the remote Follow API server through `@follow-app/client-sdk`. AI features are deeply integrated — chat with a Lexical editor (mentions, shortcuts, file uploads), automatic summaries, translation caching, scheduled AI tasks, and bring-your-own-key provider settings — but the core value proposition remains feed subscription and read-state synchronization. Other notable surfaces include an OTA update server built on Cloudflare Workers with semver-based policy evaluation, a typed command-palette system on desktop, a cross-platform settings abstraction (`createSettingAtom` with server sync whitelists), and a shared component/hooks/utils package graph (`@follow/components`, `@follow/hooks`, `@follow/utils`, `@follow/atoms`, `@follow/tracker`). The tracker layer abstracts PostHog/Firebase/GA4 behind adapters. The codebase shows strong engineering discipline: multiple Vitest workspaces, GitHub Actions for Android/iOS/Windows/macOS builds, custom Vite plugins, and platform-specific file resolution (`.electron.ts`, `.native.tsx`, `.web.ts`). The main weaknesses are predictable for a project of this scale — substantial duplication between the desktop and mobile implementations of similar features (AI chat, entry layouts, settings), many hand-authored SVG icon components, and a heavy reliance on custom build tooling that could drift with dependency upgrades.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
actualbudget/actual ★ 29421 3121 APPLICATION

Actual Budget is a mature, open-source personal finance application that operates on a local-first architecture with optional multi-device sync. In production, it provides envelope and tracking budgeting, transaction management, bank account synchronization via GoCardless/SimpleFIN/Pluggy, scheduled transactions, an advanced rules engine for auto-categorization, custom reports and dashboards (including Monte Carlo forecasting), and multi-user sync server capabilities. The system is built as a monorepo with distinct packages: `loot-core` (business logic, SQLite database, CRDT sync, custom AQL query language), `desktop-client` (React SPA with Redux and TanStack Query), `desktop-electron` (Electron wrapper), `mobile-client` (Capacitor-based), `sync-server` (Express with authentication and bank integrations), `cli` (headless management), `api` (public npm package), `component-library` (design system), and `crdt` (conflict-free replicated data type). Data flows from user input or bank imports into a local SQLite store, with optional sync to other devices via a CRDT protocol over a WebSocket/HTTP server. The project demonstrates high engineering craftsmanship with extensive tests, custom but well-documented systems, and a strong modular architecture. It is not a data research project.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 6 reusable components found
quasarframework/quasar ★ 27202 3664 APPLICATION

The Quasar Framework monorepo is a comprehensive Vue 3 UI component library and cross-platform application development toolkit. It provides a rich set of reusable components (QBtn, QTable, QDialog, QLayout, etc.), composables (useTimeout, useDark, useForm, etc.), directives (v-ripple, v-touch-pan, etc.), and plugins (Notify, Dialog, Loading, Dark mode, etc.) that enable building responsive web, mobile, and desktop applications from a single codebase. The framework is distributed as multiple packages: the core UI library (`quasar`), a Vite-based CLI (`@quasar/app-vite`) that supports building for SPA, SSR, SSG, PWA, browser extensions (BEX), Cordova, Capacitor, and Electron targets, a project scaffolder (`create-quasar`), a global CLI (`@quasar/cli`), a Vite plugin for auto-imports and Sass variable injection, an icon generation tool (`icongenie`), and an MCP server for AI agent integration. The architecture follows a monorepo pattern managed with pnpm workspaces. The core UI library is built with Vue 3 and exposes a plugin-based system where components, composables, and directives are registered via a central `install-quasar` entry point. The CLI (`app-vite`) uses Vite and Rolldown as build backends, with mode-specific builders that generate optimized output for each target platform. The scaffolding system (`create-quasar`) generates project templates with optional TypeScript, Pinia state management, i18n, and linting configurations. The documentation site (`docs/`) is itself a Quasar SSR application that dogfoods the framework and includes a custom markdown build pipeline with API documentation extraction from JSON descriptors. Key entry points include `ui/src/vue-plugin.js` (framework installation), `app-vite/bin/quasar.js` (CLI dispatcher), `create-quasar/bin/create-quasar.js` (project creation), and `mcp/src/server.js` (AI agent server). External dependencies include Vue 3, Vite, Rolldown, Vitest, Playwright, and various icon libraries. The codebase demonstrates strong engineering practices with extensive unit, integration, and SSR hydration tests, a well-defined composable lifecycle pattern, and a modular build system that abstracts platform-specific concerns behind consistent interfaces.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 6 reusable components found
NeuralNomadsAI/CodeNomad ★ 2554 170 APPLICATION

CodeNomad is a desktop application (Electron and Tauri) that serves as a sophisticated AI coding cockpit, wrapping the OpenCode CLI. It provides an advanced chat-based interface for managing AI coding sessions across multiple workspaces, with support for tool execution (bash, read, write, diff), file browsing, Git integration, voice input, and remote access. The architecture consists of a Node.js/Fastify server that orchestrates OpenCode instances and manages settings, a SolidJS UI rendered in a webview, and native desktop shells (Electron and Tauri) providing OS integration. The codebase is a monorepo with multiple packages, extensive test coverage, and a focus on developer experience with features like session persistence, worktree management, and a plugin-based right panel. While primarily an application, it includes usage tracking providers that aggregate token consumption from various AI services.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
felinics/Memoh ★ 2205 208 APPLICATION

Memoh is an open-source, full-stack AI agent platform that provides each agent with an isolated cloud computer (filesystem, desktop, browser, network, long-term memory). The system is built around a Go backend with Echo HTTP and gRPC, Vue 3 frontend with Pinia, and an Electron desktop shell. It supports multiple agent runtimes (native, ACP, Codex, Claude Code), a wide range of messaging channels (Telegram, Discord, Feishu, WeChat, LINE, DingTalk, etc.), and container-based workspaces via containerd or Docker. The architecture is a monolith with clearly separated packages for channel adapters, context management, session orchestration, and tool execution. The codebase demonstrates high engineering craftsmanship with extensive test coverage, sophisticated concurrency patterns (runtime fences, decision waiters, atomic compaction barriers), and a modular context fragment system for prompt assembly. It is actively maintained with frequent commits, thorough CI/CD, and over 140 database migrations.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
jgraph/drawio-desktop ★ 63380 5780 APPLICATION

drawio-desktop is an Electron-based desktop application that wraps the core draw.io diagramming editor (included as a git submodule). It provides a fully offline diagramming experience with a security-first design: Content Security Policy prevents remote script execution, IPC is gated through contextBridge with sender validation, and file operations enforce path authorisation against symlink attacks. The application supports CLI-based batch export (PNG, PDF, SVG, HTML, XML) with a hand-rolled argument parser, per-window file watching, auto-update via electron-updater, and platform-specific builds for Windows (x64/arm64, MSI, NSIS, APPX), macOS (dmg, zip, Quick Look preview), and Linux (AppImage, deb, rpm, snap). The architecture is a monolithic Electron main process (src/main/electron.js) communicating with the renderer (drawio submodule) through a secure IPC bridge. The codebase demonstrates high craftsmanship in security-sensitive areas such as backup file writes using exclusive temp files and rename, CLI export symlink handling, and per-window file watch registry. It is actively maintained with recent commits and comprehensive CI/CD pipelines.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
getpaseo/paseo ★ 20783 2448 APPLICATION

Paseo is a full-stack, multi-platform development environment for orchestrating AI coding agents (Claude Code, Codex, OpenCode, Pi, etc.) from a unified interface. It consists of a daemon server that manages agent sessions, workspaces, terminals, and git operations; a cross-platform client built with React Native/Expo (iOS, Android, web, Electron desktop); a CLI tool; and a plugin ecosystem. The architecture is provider-agnostic, supporting multiple AI backends through a common protocol layer. The codebase demonstrates high engineering craftsmanship with extensive test coverage, clean separation of concerns, and reusable patterns like the plugin SDK, protocol schemas, and platform abstraction layers. It is actively maintained with rapid release cycles and a large community.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
IsmaelMartinez/teams-for-linux ★ 4999 382 APPLICATION

This repository is an unofficial, community-maintained Microsoft Teams desktop client for Linux (and cross-platform). It wraps the Microsoft Teams web application in an Electron shell, providing native desktop integration features that the web client lacks on Linux, such as system tray notifications, custom backgrounds, screen sharing with preview, WebAuthn/FIDO2 hardware security key support, MQTT integration for home automation, multi-account profiles with isolated sessions, and configurable themes. The architecture follows a typical Electron main/renderer process split with heavy use of IPC for communication. The main process manages windows, configuration, menus, tray, auto-updates, and integrates with system services (D-Bus for KDE/GNOME, Flatpak portals, Snap confinement). The renderer process uses preload scripts to inject browser tools that intercept WebRTC constraints, monitor DOM mutations, and patch Teams' internal React services for features like meeting start detection, speaking indicators, and token caching. The codebase is well-structured with a modular design, extensive unit and E2E tests, automated CI/CD pipelines, and formal architecture decision records (ADRs). It is actively maintained with frequent releases, responsive issue triage, and a strong focus on Linux compatibility, though it also supports Windows and macOS.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
anomalyco/opencode ★ 211297 28019 APPLICATION

OpenCode is an open-source AI coding agent platform that provides a multi-interface development environment including a desktop app (Electron), terminal UI (TUI), CLI, web console, and headless server. It integrates with numerous LLM providers (Anthropic, OpenAI, Google, Groq, etc.) and offers session management, a plugin system, file editing, shell commands, and real-time collaboration features. The architecture is a monorepo with packages for core logic, UI components, server, SDK, and integrations. Key entry points include the CLI (`opencode`), TUI, desktop app, and web console. Data flows involve session event sourcing, LLM request routing, and database persistence (SQLite locally, PlanetScale for cloud). External dependencies include Effect-TS, SolidJS, Electron, Bun, and various LLM provider APIs. The codebase demonstrates high craftsmanship with extensive use of Effect-TS for functional effect management, a well-defined plugin system, and a rich set of UI components built with SolidJS and Kobalte. It includes comprehensive testing (unit, e2e, performance benchmarks) and a robust CI/CD pipeline. However, the monorepo is large and complex, with some duplication between UI versions (v1/v2) and experimental features that may introduce drift. Overall, it is a well-engineered, actively maintained project suitable for reuse of its core patterns and components.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
vercel/hyper ★ 44745 3578 APPLICATION

Hyper is a cross-platform terminal emulator built on Electron, React, Redux, xterm.js, and node-pty. It provides a fast, extensible terminal experience with a plugin system that allows users to customize the UI, keymaps, menus, and behavior via npm-installed plugins. The application architecture follows a classic Electron main/renderer split: the main process handles window management, shell sessions, auto-updates, and configuration, while the renderer runs a React/Redux UI with xterm.js for terminal rendering. Communication between processes is done through a typed RPC layer. The codebase demonstrates strong engineering practices including a Redux effects middleware for side effects, a data batching mechanism to reduce IPC overhead from PTY output, and a plugin decoration pattern that wraps React components with higher-order components. The repository also includes a CLI tool for plugin management and build scripts for packaging and notarization. While the code is well-structured and professionally maintained, it carries some technical debt from deprecated dependencies like @electron/remote and seamless-immutable, and the plugin API introduces coupling risks.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found

Electron React Boilerplate is a foundation for building scalable desktop applications using Electron, React, TypeScript, and Webpack. It provides a complete architecture with separate main and renderer processes, secure IPC communication via contextBridge, automated build and packaging workflows, and follows Electron security best practices. The boilerplate includes development features like hot reloading and debugging tools, as well as production capabilities such as auto-updating, code signing, and notarization support.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 2 reusable components found
mediago-dev/mediago ★ 9267 826 APPLICATION

MediaGo is a cross-platform media download manager that enables users to download videos from a wide range of sources, including HLS/m3u8 streams, YouTube, Bilibili, TikTok, Douyin, Xiaohongshu, and direct URLs. It is built as a monorepo with a Go backend (REST API + SSE events), an Electron desktop shell, a web UI (React 19), a mobile player UI, and a Chrome MV3 browser extension. The backend manages a download task queue that orchestrates external binaries (yt-dlp, BBDown, ffmpeg, aria2c, N_m3u8DL-RE) via PTY/exec runners, provides real-time progress through SSE, and includes an MCP server for AI agent integration. The Electron app embeds a Chromium webview for media source sniffing and supports share intents, ad blocking, and device mode. The browser extension detects media resources on pages and dispatches them to the local or remote MediaGo server via HTTP or a custom protocol.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 8 reusable components found
Hiram-Wong/zyfun ★ 9032 1095 APPLICATION

This is a cross-platform desktop media player/manager application built with Electron, Vue 3, and TypeScript. It aggregates content from various sources (local files, online sites, IPTV streams) and provides playback through multiple backends including VLC, xgplayer, and artplayer. The application features media library management, history tracking, favorites, live TV support, subtitle/danmaku functionality, proxy settings, cloud synchronization, AI integration, and a plugin/extension system. It includes laboratory tools for cryptographic operations, content analysis, and experimentation. The architecture separates main and renderer processes with Fastify-based internal APIs, uses Pinia for state management, and employs worker pools for CPU-intensive operations.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
mockoon/mockoon ★ 8439 481 APPLICATION

Mockoon is a multi-platform API mocking tool that runs mock servers locally or remotely. It is built as a monorepo with six npm packages: @mockoon/commons (shared models, migrations, OpenAPI converter), @mockoon/commons-server (core Express-based mock server engine with templating and response rules), @mockoon/app (Electron desktop application with an Angular renderer), @mockoon/cli (oclif-based command-line interface), @mockoon/cloud (cloud sync library), and the deprecated @mockoon/serverless wrapper. The architecture cleanly separates the core server logic from the delivery mechanisms. The MockoonServer class provides an HTTP/HTTPS server with a sophisticated response rule engine, a Handlebars templating system with over 100 custom helpers (including deep Faker.js integration), CRUD operations on data buckets, WebSocket support, proxy mode, and a full admin API. The desktop app uses a Redux-like state management pattern with RxJS, ensuring predictable and testable UI state transitions. The codebase demonstrates high craftsmanship in several areas. The ResponseRulesInterpreter is a self-contained DSL for matching HTTP requests to mock responses. The TemplateParser provides an extensible helper registration system. The data migration system in commons is a textbook example of handling schema evolution for JSON-based data models. The project is actively maintained with a robust CI/CD pipeline, though it carries some technical debt such as a deprecated serverless package and disabled strict TypeScript mode in the desktop app.

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