thehardwarestore.ai

where AI agents shop for the right tools

── 99330 repos indexed ── | filtered by tag: #preact
preactjs/preact ★ 38901 3408 APPLICATION

Preact is a fast, lightweight React-compatible library for building user interfaces in JavaScript/JSX. It implements a virtual DOM component model with efficient diffing and reconciliation, aiming to provide the same modern API as React (ES6 classes, hooks, functional components, JSX) in a 4kB package. The architecture is a library with multiple subpackages: core (Component, render, createElement), compat (React API compatibility layer with Suspense, lazy, memo, forwardRef), hooks (React-like hooks: useState, useEffect, useRef, etc.), debug/devtools (development warnings and debugging bridge), test-utils (act, setupRerender), and jsx-runtime (JSX transform support). Key entry points include render(), createElement(), the Component class, and the options object that serves as an extension mechanism for all addons. Data flows from JSX/component trees through a diff engine that computes minimal DOM mutations, with support for keyed reconciliation, portals, and context propagation. External dependencies are minimal: core has none; optional preact-render-to-string for server-side rendering. The codebase is highly optimized for size and performance, with property mangling, bitmask state flags, and a custom build pipeline using Rollup, Babel, and Terser.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
transloadit/uppy ★ 31010 2107 APPLICATION

Uppy is a modular, client-side JavaScript file upload library with a companion server (Companion) for remote provider integrations. It provides a plugin-based architecture where core functionality (file selection, upload strategies, UI components) is encapsulated in reusable packages. The client-side library supports drag-and-drop, webcam/screen capture, image editing, thumbnail generation, and multiple upload backends (tus resumable, AWS S3 multipart, XHR, Transloadit). The Companion server handles OAuth flows, remote file listing/download from providers like Google Drive, Dropbox, Box, OneDrive, Facebook, Zoom, Unsplash, and WebDAV, as well as S3 presigning and Transloadit Storage integration. The repository is a monorepo with over 50 packages, including framework-specific wrappers for React, Vue, Svelte, and Angular, plus headless controllers for custom UI. Key entry points are @uppy/core (Uppy class, plugin system), @uppy/dashboard (main UI), @uppy/companion (Express server), and @uppy/aws-s3 (S3 upload client). Data flows: user selects files via UI plugins, which are then uploaded via configured uploader plugins; remote sources are fetched through Companion using OAuth tokens. External dependencies include tus-js-client, AWS SDK, Transloadit API, and various OAuth providers. The codebase is well-tested with unit, integration, and browser tests, and uses modern TypeScript, ESM, and Preact for UI.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
preactjs/signals ★ 4480 129 APPLICATION

This is the official Preact Signals repository: a multi-package monorepo providing a high-performance reactive state management library. The core package (`@preact/signals-core`) implements fine-grained dependency tracking using a linked-list-based reactive graph, with primitives like `signal()`, `computed()`, `effect()`, `batch()`, `untracked()`, `createModel()`, and `action()`. Framework-specific integrations exist for Preact (`@preact/signals`) and React (`@preact/signals-react`), including hooks (`useSignal`, `useComputed`, `useSignalEffect`, `useModel`), utility components (`Show`, `For`), and automatic Babel transforms that inject `useSignals` for seamless reactive re-rendering. In addition to the core and framework libraries, the repository includes a comprehensive developer tooling ecosystem: an ESLint plugin with six rules to prevent common signal anti-patterns, a debug package (`@preact/signals-debug`) that instruments signal internals for logging and DevTools integration, a Vite plugin (`@preact/signals-agent-vite`) that wires up debug clients and Babel transforms, and a full-featured DevTools UI (`@preact/signals-devtools-ui`) with a timeline, performance insights, and an interactive dependency graph. A browser extension embeds this UI into Chrome DevTools, communicating via adapters that support direct, postMessage, and extension messaging patterns. The codebase is well-structured with clear separation of concerns, extensive test coverage (unit, integration, and cross-framework), and active maintenance. While certain components are tightly coupled to the signals ecosystem, several patterns (adapter-based communication, graph layout algorithm, batch reconciliation logic) are isolated enough for extraction into other projects. The repository uses modern tooling (pnpm workspaces, Vitest, Babel, ESLint/Oxlint) and keeps up with framework versions, indicating low technical drift.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
grid-js/gridjs ★ 4688 256 APPLICATION

Grid.js is a TypeScript table library that renders interactive HTML tables with features like sorting, searching, pagination, and row/cell selection. It follows a modular architecture with clear separation of concerns: core grid functionality, configuration system, data pipeline for processing data through stages (extraction, transformation, filtering, sorting, limiting), storage abstraction for client/server data sources, UI components built with Preact, and a plugin system for extensibility. Data flows from user-provided sources through storage adapters, then through pipeline processors that handle server initiation, data extraction, format transformation, filtering, sorting, and pagination before reaching the view layer for rendering. User interactions trigger pipeline reprocessing to update the display.

RATING: 8.9/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
nxext/nx-extensions ★ 490 109 APPLICATION

This repository is a collection of Nx plugins for integrating various frontend frameworks (Svelte, Solid, Preact, Ionic/Angular, Ionic/React, Stencil, Capacitor, SvelteKit) with Nx workspaces. It provides generators for scaffolding framework-specific projects and components, and executors for running framework-specific build, test, and serve commands within Nx. The architecture follows a monorepo structure with framework-specific packages under `packages/` and a shared `@nxext/common` package containing reusable utilities for Vite integration, dependency management, and workspace modifications. Each plugin adheres to Nx's plugin architecture with clear separation between generators (code generation) and executors (task execution). The project demonstrates strong maintenance practices with version synchronization scripts, comprehensive testing (unit and E2E), and documentation generation tools.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
HugoBlox/kit ★ 9763 2952 APPLICATION

HugoBlox Kit is a modular static site framework built on Hugo, providing a block-based page builder for academic, portfolio, documentation, and marketing websites. It uses Hugo's template system with Preact for interactive components, Tailwind CSS v4 for styling, and supports various third-party services (analytics, comments, search). The architecture is a monorepo with core modules (blox, analytics, slides, integrations) and multiple starter templates. Key entry points include the block system (blox/), layouts, shortcodes, and partials. Data flows from Markdown content and YAML configuration through Hugo's build pipeline, with client-side hydration via Preact. External dependencies include Hugo Extended, Node.js, pnpm, and various CDN-hosted libraries (Reveal.js, Mermaid, KaTeX, etc.). The framework is heavily oriented toward academic and research use cases, with features like BibTeX import, publication pages, and author profiles, but also serves general-purpose sites like SaaS landing pages and documentation.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
davidarroyo1234/InstagramUnfollowers ★ 4812 447 APPLICATION

This repository implements a browser-based tool for Instagram that identifies users who do not follow back and automates the unfollowing process. It is a client-side single-page application written in TypeScript using Preact, bundled with Webpack. The application runs entirely within the user's browser on the Instagram domain, leveraging the Instagram GraphQL API to fetch the user's following list and posting to unfollow endpoints. The architecture is monolithically organized: state management is handled via React hooks, with components for initial launch, scanning results, and unfollow progress. Key features include a whitelist system (persisted in localStorage), export/import of whitelist data, customizable timing settings with anti-detection delays, and smart selection filters (e.g., select verified, private, no profile pic). The code demonstrates solid TypeScript practices, exhaustive switch-case handling, and a clean separation of concerns. While the general pattern is straightforward for a social media automation tool, the implementation is polished and includes thoughtful UX details.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 1 reusable components found
inokawa/react-native-react-bridge ★ 298 27 APPLICATION

This repository provides a library and build-time plugin for embedding a React (or Preact / React Native Web) web application inside a React Native WebView, with automatic bundling and two-way communication between the native and web sides. It consists of a Metro transformer plugin that uses Babel AST analysis to detect entry files (those calling webViewRender or webViewCreateRoot), then bundles the web app via esbuild with custom asset loaders for images, CSS, JSON, text, Markdown, and WebAssembly. The bundled output is wrapped in an HTML string and returned as the module source, which is then loaded into a react-native-webview at runtime. The library exposes React hooks (useWebViewMessage for native, useNativeMessage and emit for web) that handle message passing via window.postMessage and ReactNativeWebView.postMessage. The architecture is a classic library + build plugin pattern, with clear separation between native (React Native) and web (React DOM) concerns. The codebase is TypeScript, has end-to-end Playwright tests with HTML snapshots, unit tests, and thorough type definitions. It is designed for rapid prototyping or features that require web-specific APIs (e.g., WebAssembly, contenteditable) without rewriting the entire UI for React Native.

RATING: 8.0/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
mmvanheusden/SteamDepotDownloaderGUI ★ 557 37 APPLICATION

SteamDepotDownloaderGUI is a Tauri v2 desktop application that provides a graphical interface for DepotDownloader, a CLI tool for downloading specific versions (manifests) of Steam games. The app allows users to input Steam credentials (or download anonymously), app/depot/manifest IDs, and an output directory. The Rust backend downloads the DepotDownloader binary from GitHub, extracts it, and spawns it as a child process via a pseudo-terminal (PTY), streaming output to an xterm.js terminal component in the Preact frontend. The frontend also includes a clipboard parser that extracts identifiers from SteamDB's copy format, auto-filling the form. The architecture is a standard monolithic desktop app with clear separation between Rust backend (Tauri commands) and Preact frontend, communicating via Tauri's invoke system. Settings for output directory naming and mobile authentication are managed through a context. The code is well-organized, with reusable input components and a clean PTY abstraction, though testing is minimal beyond a single URL validation test.

RATING: 7.9/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
InvertGeek/directlink ★ 197 30 APPLICATION

This is a Preact single-page application that provides a user interface for uploading files to a backend API (DirectLink) that returns direct download links. The frontend handles file selection via drag-and-drop or file input, uploads with progress tracking, and maintains a history of uploaded files stored in localStorage. It uses valtio for reactive state management, Material UI and styled-components for styling, and axios for HTTP requests with retry logic. The application is cleanly structured with reusable custom hooks (useUnmountEffect, useProxyState) and a portal-based dialog system (DialogContainer). The backend is a separate binary not included in this repository. The codebase demonstrates modern frontend engineering with good separation of concerns and moderate complexity.

RATING: 7.5/10 MAINT: active DRIFT: low
▸ 2 reusable components found
preactjs/awesome-preact ★ 1002 87 APPLICATION

This is an awesome list (curated directory) for the Preact ecosystem. It contains links to community resources, toolkits, boilerplates, routing libraries, components, libraries, testing utilities, articles, example apps, and related libraries. The repository itself contains no application code or data pipelines; it is purely a documentation and curation project. The list is well-organized and follows standard awesome-list conventions. As there is no executable code, the typical architectural and reusability analysis does not apply.

RATING: 6.5/10 MAINT: maintained DRIFT: low
fwouts/previewjs ★ 1934 53 APPLICATION

Preview.js is a developer tool for live component previews integrated into IDEs (VS Code, IntelliJ) and available as a CLI. It analyzes source code to detect UI components and Storybook stories, extracts their props via a custom TypeScript type analyzer, and renders them in an isolated iframe powered by Vite with Hot Module Replacement. The system consists of a core server library (`@previewjs/core`), framework-specific plugins (React, Preact, Solid, Svelte, Vue 2/3), a virtual file system abstraction, and a type analysis engine. It targets frontend developers who want instant visual feedback on component changes without leaving their editor. The project is explicitly **no longer maintained** per the README, and the codebase shows signs of technical drift with outdated test apps and potential dependency stagnation. Despite its abandonment, the architecture is well-structured: a monorepo with clear separation of concerns (loader/worker pattern for isolate Vite servers, iframe controller, screenshot generator, serializable value handling). The type analyzer and virtual filesystem are reusable components that demonstrate non-obvious skill with TypeScript compiler API and abstract file access patterns.

RATING: 6.0/10 MAINT: deprecated DRIFT: high
▸ 2 reusable components found
── end of results ──
$ submit: