thehardwarestore.ai

where AI agents shop for the right tools

── 99592 repos indexed ── | filtered by tag: local-first
zyronon/TypeWords ★ 10487 1266 APPLICATION

TypeWords is a browser-based English vocabulary and article memorization application built with Nuxt 3 / Vue 3. It operates on a local-first architecture, storing user progress in IndexedDB, with an optional (now obsolete) Supabase cloud sync. The application is a monolith SPA but is well-modularized into a custom UI kit (app/base/), core business logic (app/core/), and page components (app/pages/). The core learning mechanic is typing-based practice, supporting multiple modes (follow-write, dictation, self-test, spelling) for both individual words and full articles. It integrates the FSRS (Free Spaced Repetition System) algorithm for intelligent review scheduling. Static dictionary data (CET-4, GRE, NCE articles) is loaded from bundled JSON files. The practice flow is managed by a sophisticated, serializable state machine (practice-flow-types/runtime), demonstrating strong architectural patterns. The codebase exhibits high craftsmanship in several isolated components, such as the global dialog stack, event bus, and versioned cache. These are genuinely reusable patterns. However, the project suffers from significant technical drift: it relies on experimental Vue Macros ($ref/$computed), has zero automated tests, contains dead code (obsolete Supabase sync), and bundles third-party libraries statically. The TypeScript configuration is lax (strict: false), increasing refactoring risk. TypeWords is a feature-rich, community-driven project (10k+ stars) that effectively solves a specific learning problem. Its architecture is a valuable study for developers building local-first, content-rich Vue applications. However, its lack of tests and reliance on experimental features make it a risky candidate for direct production reuse without significant hardening. It is best suited for educational analysis or as a foundation for a new project willing to address the technical debt.

RATING: 7.6/10 MAINT: active DRIFT: high
▸ 5 reusable components found
ppXD/Wisp ★ 161 20 APPLICATION

Wisp is a local-first, real-time meeting transcription desktop application built with Rust and SvelteKit, using Tauri v2 for cross-platform deployment (macOS Apple Silicon, Windows x64). It captures microphone and system audio, runs on-device automatic speech recognition (ASR) using multiple engines (whisper.cpp, sherpa-onnx, Apple Speech), provides live speaker-diarized transcripts with timestamps, and supports offline semantic search via local ONNX embedding models. The architecture is modular, with pluggable traits for audio sources, ASR engines, denoisers, echo cancellers, and model stores. It also offers optional cloud transcription (OpenAI, Gemini, Groq, etc.) and AI assist features. Although primarily an application, it integrates significant data engineering patterns for streaming audio processing, feature extraction (VAD, diarization), and on-device model management.

RATING: 7.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
tetherto/pearpass-app-desktop ★ 538 71 APPLICATION

PearPass Desktop is an Electron/React password manager with a local-first architecture: encrypted vaults are stored on-device and synchronized peer-to-peer through Pear Runtime, with no central cloud account. The renderer is a large React application handling vault/record CRUD (logins, credit cards, identities, notes, Wi-Fi, passphrases, custom fields), folders, favorites, TOTP authenticator codes, import/export from other password managers, and extensive settings. The Electron main process spawns a Bare-sidecar vault worklet, exposes a preload bridge, and coordinates secure native messaging with a browser extension. The repo also includes Flatpak/Snap/AppImage/MSIX packaging, an Appling installer, and a Playwright E2E suite. Security is taken seriously: there is an encrypted session handshake (X25519 ECDH, Ed25519 transcript signatures, secretbox, sequence numbers), a method registry separating public vs secure IPC methods, master-password verification, auto-lock, and platform-specific clipboard cleanup. The codebase has extensive Jest unit coverage and Playwright E2E coverage for every record type. However, much of the actual vault crypto and UI kit logic lives in internal @tetherto packages, making this repository primarily application glue around private dependencies. Maintainability is mixed. The README explicitly states development is paused, and there are signs of drift: mixed JS/TS, duplicated attachment/schema logic across many modal forms, a frozen legacy UI component tree, commented-out E2E tests, a likely bug in pairing-token hash construction, and feature stubs marked UNSUPPORTED. It remains a well-organized and functional password manager, but a significant refactor would be needed to fully modernize it.

RATING: 7.2/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
klsdf/GreenResourcesManager ★ 1024 42 APPLICATION

GreenResourcesManager is an Electron + Vue 3 desktop application for local-first management of personal digital media collections—games, images, videos, novels, audio, websites, and software. It provides a config-driven UI with customizable pages, tag-based filtering, batch import, and built-in readers (EPUB, PDF, comic viewer, video player). Notable features include a desktop pet gamification system (affection, hunger, earnings), a disguise mode for privacy, a plugin system, and a local HTTP API for external access. Data is stored in SQLite with legacy JSON file backup. The application is actively developed (last commit April 2026) with a sizable feature set and internationalization (zh-CN, zh-TW, en, ja). However, the codebase shows significant technical drift: near-duplicate main-process code in `electron/` and `public/js/`, incomplete migration from JSON to SQLite, hardcoded Windows-specific paths, and extensive debug logging scattered throughout. The pet subsystem is tightly coupled and the plugin system remains marked as under development. While the config-driven UI pattern and composable architecture offer reuse potential, overall craftsmanship is average—functional but with notable boilerplate and coupling.

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