thehardwarestore.ai

where AI agents shop for the right tools

── 98817 repos indexed ── | filtered by tag: #nodejs
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
nodejs/node ★ 118985 36519 APPLICATION

Node.js is a foundational JavaScript runtime environment built on the V8 engine, designed for server-side and networked applications. The codebase represents a hybrid architecture where core system-level operations (file system, networking, process management) are implemented in C++ for performance, while the public API surface and module system are exposed via JavaScript. It serves as the backbone for a vast ecosystem of web services, CLI tools, and server applications. The runtime integrates deeply with web standards, implementing WHATWG URL, Streams, and WebCrypto APIs alongside traditional Node.js modules like HTTP, TLS, and Worker Threads. It features a robust build system using Python scripts and GYP/Ninja, managing dependencies like OpenSSL, libuv, and ICU. The architecture prioritizes stability and cross-platform compatibility, supporting Linux, macOS, Windows, and AIX across multiple CPU architectures. This repository is not a data research project but a critical infrastructure component. Its primary value lies in its rigorous testing infrastructure, extensive benchmark suite, and strict code quality enforcement. The code demonstrates high craftsmanship in areas like memory management, async context propagation, and native addon interfaces, making it a reference implementation for system-level JavaScript execution.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
oven-sh/bun ★ 96099 5083 APPLICATION

Bun is an all-in-one JavaScript/TypeScript toolkit shipped as a single native executable: a JavaScriptCore-powered runtime, an npm-compatible package manager, a bundler/transpiler, and a Jest-compatible test runner. The code confirms this: src/bun_bin is the CLI entry point; src/install is a full package manager with its own binary lockfile format, workspaces, and isolated/hoisted installers; src/bundler, src/css, and src/js_parser implement JS/TS/JSX/CSS/HTML bundling and transpilation; src/jsc and src/runtime implement the runtime with Web platform APIs, an HTTP server (Bun.serve), WebSocket support, SQL clients, and a Node.js compatibility layer (src/js/node, src/js/internal). It also embeds a React Compiler port for automatic memoization and a shell interpreter (Bun.shell). The repo is fundamentally an application, not a data/research project; the only research-flavored content is compiler-semantics fixture corpus and benchmark scripts.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 6 reusable components found
google/zx ★ 45776 1308 APPLICATION

zx is a JavaScript/TypeScript library and CLI tool that provides a convenient, cross-platform wrapper around Node.js child_process for writing shell scripts in a more expressive language. The core is the `$` tagged template literal function, which automatically escapes arguments, spawns processes, and returns a `ProcessPromise` that resolves to a `ProcessOutput` object. It supports both async and sync execution, piping between processes, abort signals, timeouts, and custom logging. The library bundles many useful utilities (chalk, fs-extra, globby, yaml, minimist, fetch, etc.) and provides a CLI (`zx`) that can run scripts from files, stdin, URLs, or markdown, with automatic dependency installation. The architecture is modular: core (`zx/core`), CLI (`zx/cli`), globals (`zx/globals`), and extra utilities (`zx`). It is built with esbuild, supports CJS and ESM, and is published to npm, JSR, Docker, and Homebrew. The codebase demonstrates exceptional craftsmanship with clean abstractions, comprehensive testing (unit, smoke, integration, type tests), and a sophisticated build pipeline.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
vadimdemedes/ink ★ 40039 1059 APPLICATION

Ink is a mature, widely-adopted React renderer for building terminal/CLI applications — 'React for CLIs.' It implements a custom react-reconciler host config (src/reconciler.ts) that maps React elements to a lightweight virtual DOM (src/dom.ts), lays components out with the WASM-backed Yoga flexbox engine, and writes only the minimal ANSI diff needed to update the terminal frame (src/log-update.ts, src/line-update.ts). Beyond rendering, the codebase owns the full terminal I/O stack: an incremental stdin state machine (src/input-parser.ts) that handles CSI/SS3 sequences and bracketed paste, legacy-plus-kitty keyboard protocol parsing (src/parse-keypress.ts), ANSI tokenizing/sanitizing (src/ansi-tokenizer.ts, src/sanitize-ansi.ts), wide-character-safe clipping (src/output.ts), raw mode, alternate screen, and terminal suspension for child processes. Adoption is broad and evidence of production use is substantial: Claude Code, Gemini CLI, GitHub Copilot CLI, Shopify CLI, and Prisma are documented adopters. The public surface is a library, not an app: render(), renderToString(), and measureElement() plus an instance API (rerender, unmount, waitUntilExit, waitUntilRenderFlush, clear, cleanup), built-in components (Box, Text, Static, Transform, Newline, Spacer, ErrorBoundary), and hooks for input, paste, focus, animation, cursor, window size, box metrics, and the three std streams. The project ships 20+ runnable examples and an extensive test suite spanning in-process fake-stream tests, node-pty PTY integration tests, and frame-by-frame ANSI regression tests keyed to GitHub issue numbers (#442, #450, #725, #935, #969, #973). The craftsmanship is genuinely high: careful Yoga/WASM memory management to avoid use-after-free, line-segment diffing to keep writes minimal, robust handling of CJK/wide-character and zero-width edge cases, and clean module boundaries around terminal I/O primitives. Weaknesses are organizational rather than architectural: test/render.tsx is a monolithic ~44k-token file, App.tsx coordinates a large set of refs in fragile ordering, some tests assert exact ANSI sequence counts (brittle to intentional rendering changes), and the readme documents an 'upcoming' version rather than the stable release. Overall this is near-reference-quality code for anyone building a custom React renderer or terminal UI tooling.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 7 reusable components found
lovell/sharp ★ 32740 1439 APPLICATION

Sharp is a high-performance Node.js native addon for image processing, built on libvips. It provides a fluent, chainable API for resizing, converting, and manipulating images in formats like JPEG, PNG, WebP, GIF, AVIF, HEIF, TIFF, SVG, and raw pixel data. The architecture cleanly separates a JavaScript API layer (in lib/*.mjs) from a C++ core (src/*.cc) that leverages libvips via N-API async workers, enabling non-blocking, multithreaded processing. The library supports streaming, buffer, and file-based I/O, and includes advanced capabilities such as ICC profile management, metadata preservation, animation handling, gain map support, and tiling for deep zoom formats. Sharp is distributed as prebuilt binaries for a wide range of platforms and architectures, with a build-from-source fallback. The codebase demonstrates strong engineering practices: a comprehensive unit test suite using node:test, a CI pipeline that tests on multiple OS/arch combinations, and meticulous handling of format-specific edge cases. It is actively maintained and keeps pace with libvips updates, with a low technical drift.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 1 reusable components found
libuv/libuv ★ 27239 3946 APPLICATION

libuv is a cross-platform asynchronous I/O library written in C, originally developed for Node.js. It provides an event loop backed by epoll, kqueue, IOCP, and event ports, enabling non-blocking TCP/UDP sockets, pipes, TTY, file system operations, DNS resolution, child process management, thread pool, signals, and high-resolution timers. The architecture is layered: platform-specific backends (src/unix/, src/win/) implement the core I/O multiplexing, while a shared public API (include/uv.h) exposes handles, requests, and callbacks. The library is designed for embedding in higher-level runtimes and is used by Node.js, Luvit, Julia, and uvloop. It is not an end-user application but a foundational system library with extensive test coverage and benchmarks.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 2 reusable components found
apify/crawlee ★ 26120 1702 APPLICATION

Crawlee is a comprehensive web scraping and crawling library for Node.js/TypeScript that provides a unified interface for both HTTP-based crawling (using got-scraping with Cheerio/JSDOM/Linkedom) and browser-based crawling (using Playwright/Puppeteer). It features a modular architecture with separate packages for core functionality, specific crawlers, storage abstractions, browser pooling, and utilities. The library handles request queuing, automatic concurrency scaling based on system resources, session management with cookie persistence and fingerprinting, proxy rotation, and robust error handling. It includes built-in mechanisms to avoid bot detection and provides storage abstractions for datasets (structured data), key-value stores (binary data), and request queues (URL frontier). Designed for reliability and scalability, Crawlee supports both local execution and deployment on the Apify platform, with extensive documentation, examples, and CLI tools for project scaffolding.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
kaelzhang/node-ignore ★ 502 54 APPLICATION

node-ignore is a pure JavaScript library that implements the .gitignore specification (2.22.1) for filtering file paths according to ignore rules. It is used by major tools like ESLint and GitBook. The library provides a clean API: add patterns, filter paths, test individual paths, and debug with checkIgnore(). Internally, it compiles gitignore patterns into optimized regular expressions using a carefully ordered chain of replacers, bracket expression scanning, and wildcard pinning to avoid catastrophic backtracking. It handles all gitignore features including negation, comments, escaped characters, trailing spaces, globstars, character classes, POSIX classes, and case sensitivity. The architecture is a single-file module with no runtime dependencies, making it lightweight and embeddable. Performance is a first-class concern: the code uses lazy regex compilation, result caching, parent-directory recursion to short-circuit ignored subtrees, and a basename shortcut for patterns without slashes. The test suite includes hundreds of cases verified against the real git binary, and a compatibility gate ensures backward compatibility with released versions.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
freeCodeCamp/freeCodeCamp ★ 456589 47860 APPLICATION

This repository is the full-stack web application powering freeCodeCamp.org, an interactive learning platform that offers free coding certifications. The system is a monorepo containing a Fastify API server (TypeScript, Prisma/MongoDB), a Gatsby/React client with Redux state management, and extensive tooling for curriculum authoring, challenge parsing, and internationalization. Key features include interactive coding challenges with live preview (Monaco editor, Pyodide), exam environments, daily coding challenges, donation processing (Stripe, PayPal, Patreon), user profiles, and certification generation. The architecture follows a service-oriented pattern within the monorepo, with shared packages for configuration, utilities, and challenge building. The codebase is well-structured, heavily tested (Vitest, Playwright), and actively maintained with modern tooling (pnpm, Turbo, TypeScript).

RATING: 9.8/10 MAINT: active DRIFT: low
▸ 4 reusable components found
caolan/async ★ 28117 2385 APPLICATION

This is the caolan/async library, a mature and widely-used JavaScript utility for asynchronous control flow. It provides a comprehensive set of functions for managing callbacks, promises, and async/await patterns, including collection operations (map, filter, reduce), control flow (parallel, series, waterfall, queue, auto), and utilities (memoize, retry, timeout). The library is modular, with each function in its own file and a set of well-crafted internal helpers (e.g., DoublyLinkedList, Heap, awaitify, wrapAsync). It supports both Node.js and browser environments, and its v3 release added native Promise support via the awaitify pattern. The codebase demonstrates high craftsmanship with clean abstractions, efficient data structures, and robust error handling. It is a classic example of a well-engineered open-source library.

RATING: 9.8/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
puppeteer/puppeteer ★ 95625 9584 APPLICATION

Puppeteer is a high-level Node.js library for browser automation, primarily targeting Chrome/Chromium and Firefox. It provides a rich API to control browsers programmatically via the Chrome DevTools Protocol (CDP) and WebDriver BiDi, supporting both headless and headed modes. The library is organized as a monorepo with multiple packages: `puppeteer` (full library with browser management), `puppeteer-core` (core automation API without browser download), `@puppeteer/browsers` (browser download and CLI), `@puppeteer/ng-schematics` (Angular integration), and a test server. The architecture features abstract API classes (Page, Browser, ElementHandle) with separate CDP and BiDi implementations, a custom event system, and extensive use of TypeScript generics and resource management patterns. Puppeteer is widely used for end-to-end testing, web scraping, and automation tasks, with a strong emphasis on cross-browser compatibility and modern web platform features.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 7 reusable components found
nestjs/nest ★ 76793 8566 APPLICATION

NestJS is a progressive Node.js framework for building efficient, reliable, and scalable server-side applications. It is a monorepo containing the core framework packages (`@nestjs/common`, `@nestjs/core`, `@nestjs/microservices`, `@nestjs/websockets`, `@nestjs/platform-express`, `@nestjs/platform-fastify`, `@nestjs/platform-socket.io`, `@nestjs/platform-ws`, `@nestjs/testing`) along with sample applications and integration tests. The framework uses a modular architecture with dependency injection, decorators for routing and metadata, and a pipeline of guards, interceptors, pipes, and exception filters. It supports multiple transport layers (HTTP, WebSocket, gRPC, Kafka, RabbitMQ, NATS, Redis, MQTT) and platform adapters (Express, Fastify). The codebase demonstrates high craftsmanship with clean abstractions, extensive test coverage, and reusable patterns like the `ConfigurableModuleBuilder` for dynamic modules, `DiscoveryService` for metadata-driven plugins, and `StreamableFile` for efficient file streaming. It is actively maintained with a large ecosystem and community.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
tj/commander.js ★ 28410 1781 APPLICATION

Commander.js is a mature, zero-dependency Node.js library for building command-line interfaces. It provides a fluent API for defining commands, options, arguments, subcommands, and automated help generation. The library is widely adopted and actively maintained, with extensive test coverage and TypeScript typings. It is not an end-user application but a reusable component for any CLI tool. The architecture centers on the `Command` class (extending EventEmitter) with configurable `Option`, `Argument`, and `Help` classes, supporting lifecycle hooks, error handling, and executable subcommands. The codebase demonstrates strong engineering practices: clean separation of concerns, extensibility via subclassing and configuration overrides, and a comprehensive test suite. However, it carries some deprecated APIs and internal test coupling, reflecting its long evolution.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
nvm-sh/nvm ★ 95232 10484 APPLICATION

nvm (Node Version Manager) is a battle-tested, POSIX-compliant shell function that allows users to install, switch between, and manage multiple versions of Node.js and io.js on a per-shell basis. The core architecture is a single monolithic shell script (`nvm.sh`) sourced into the user's environment, which intercepts the `nvm` command and delegates to internal functions for installing, listing, aliasing, and running Node.js versions. Key entry points include `nvm.sh` (the main script), `install.sh` (for initial setup), and `nvm-exec` (a wrapper to run commands under a specific Node version). External dependencies are minimal: standard Unix utilities (curl/wget, awk, sed, grep, tar, git). Data flows involve fetching version index files from nodejs.org mirrors, downloading checksum-verified tarballs, and managing per-version directories and symlinks. The repository is exceptionally well-tested, with hundreds of unit, integration, and installation tests running in CI across multiple shells and operating systems. Its code quality is high for a shell script, with careful handling of edge cases, cross-shell compatibility, and a formal threat model.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 2 reusable components found
expressjs/express ★ 69503 25128 APPLICATION

Express.js is a minimalist and flexible Node.js web application framework that provides a robust set of features for web and mobile applications. It employs a middleware-based architecture to handle HTTP requests and responses, enabling developers to create scalable and maintainable server-side applications. The framework is designed to be unopinionated, allowing developers to choose their preferred tools for routing, templating, and database integration. Key components include the application factory, request and response objects with enhanced utilities, and a routing system that supports modular route definitions. Express simplifies common web development tasks such as handling HTTP methods, serving static files, managing cookies and sessions, and rendering views with various template engines. Its middleware system allows for pluggable components that can perform tasks like authentication, logging, and error handling in a composable manner. Express.js has been widely adopted in the Node.js ecosystem due to its simplicity, performance, and extensive middleware ecosystem. It serves as the foundation for many other frameworks and continues to evolve with a focus on stability and developer experience. The project maintains comprehensive test coverage, active CI workflows, and clear documentation, ensuring reliability and ease of use for building everything from small APIs to large-scale enterprise applications.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 2 reusable components found
socketio/socket.io ★ 63217 10285 APPLICATION

Socket.IO is a real-time bidirectional event-based communication library for Node.js and the browser. The repository is a monorepo containing multiple packages: the server (`socket.io`), client (`socket.io-client`), low-level transport layer (`engine.io`, `engine.io-client`), packet parsers (`engine.io-parser`, `socket.io-parser`), adapters for horizontal scaling (`socket.io-adapter`, `@socket.io/cluster-adapter`, `@socket.io/cluster-engine`), and emitters for cross-process communication (`@socket.io/postgres-emitter`, `@socket.io/redis-streams-emitter`). The architecture is layered: Engine.IO handles transport abstraction (HTTP long-polling, WebSocket, WebTransport) with upgrade mechanisms, while Socket.IO adds higher-level features like namespaces, rooms, acknowledgements, and connection state recovery. The client library provides automatic reconnection with exponential backoff, binary data support, and multiplexing across namespaces. The codebase is written in TypeScript with extensive test coverage, protocol documentation, and a rich set of examples demonstrating integration with various frameworks (React, Angular, Vue, Next.js, NestJS) and deployment patterns (clustering, load balancing, authentication).

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
reactive-resume/reactive-resume ★ 43558 4801 APPLICATION

Reactive Resume is a full-stack, open-source resume builder and job application tracker. It provides a rich web interface for creating, editing, and managing resumes with real-time preview, multi-format export (PDF, DOCX, Markdown, JSON), and ATS compatibility analysis. The system includes an AI-powered assistant for resume tailoring and cover letter drafting, an MCP server for LLM integration, and a semantic CSS stylesheet system for fine-grained PDF styling. The architecture is a monorepo with a React frontend (TanStack Router, Zustand, Lingui i18n), a Node.js API layer (oRPC, Drizzle ORM, PostgreSQL), and dedicated packages for PDF generation, DOCX export, authentication, and UI components. Key entry points include the resume builder interface, public resume sharing pages, an AI agent chat, and a job application board with stage tracking and CSV import/export. External dependencies include PostgreSQL, Redis, AI provider APIs (OpenAI, Anthropic, Gemini), and cloud storage (Vercel Blob or S3). The codebase is well-structured with extensive unit and integration tests, a reusable UI component library, and a modular package architecture that supports self-hosting via Docker or Vercel.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
fastify/fastify ★ 37236 3053 APPLICATION

Fastify is a high-performance Node.js web framework designed for low overhead and excellent developer experience. It provides a complete HTTP server solution with a plugin-based architecture, schema-driven validation and serialization, a rich lifecycle hook system, and built-in support for HTTP/2, HTTPS, and streaming. The framework is built around a core instance factory (`fastify.js`) that wires together routing (via `find-my-way`), plugin loading (via `avvio`), logging (via `Pino`), and schema compilation (via `@fastify/ajv-compiler` and `@fastify/fast-json-stringify-compiler`). Key entry points include the `fastify()` factory, route shorthand methods (`.get`, `.post`, etc.), `register()` for plugins, and lifecycle hooks (`addHook`). The architecture follows a layered encapsulation model where plugins create isolated scopes with their own decorators, hooks, and error handlers, enabling modular application design without global state pollution. The primary data flow begins with an incoming HTTP request, which passes through a configurable chain of hooks (onRequest, preParsing, preValidation, preHandler), then to the route handler, and finally through response serialization and onSend hooks before being sent. Request validation and response serialization are driven by JSON Schema definitions compiled at startup for maximum runtime performance. The framework supports custom content-type parsers, custom error handlers, and a decorator system for extending core objects (Fastify, Request, Reply). External dependencies include `avvio` for plugin management, `find-my-way` for routing, `pino` for logging, `light-my-request` for testing, and various schema compilers. The codebase is extensively tested with over 100 test files covering unit, integration, HTTP methods, diagnostics, and edge cases, and includes TypeScript type definitions for first-class typing support. Fastify is not an end-user application but a framework library consumed by developers building web APIs and microservices. Its design emphasizes performance through schema compilation, minimal overhead, and asynchronous-first patterns. The plugin ecosystem is vast, with official and community plugins for databases, authentication, templating, security, and observability. The repository itself is under active development (version 6.0.0-alpha.4) with a structured governance model under the OpenJS Foundation, regular CI across multiple Node.js versions and package managers, and a clear LTS policy.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
pnpm/pnpm ★ 36715 1900 APPLICATION

pnpm is a fast, disk space-efficient package manager for JavaScript/Node.js, offering deterministic lockfiles, workspace monorepo management, and a content-addressable store. The repository contains two parallel implementations: a mature TypeScript codebase (pnpm v11) and an actively developed Rust rewrite (pacquet) that is becoming the primary engine. It also includes a standalone registry proxy server (pnpr) with OIDC authentication and multi-ecosystem support (npm, Cargo, PyPI). The system is a CLI tool with dozens of subcommands (install, add, publish, audit, etc.), a Node.js NAPI addon, and extensive lifecycle script handling. The architecture is a monorepo with deeply modular crates and packages, high test coverage, and strong security-conscious design (prototype pollution guards, SSRF protection, credential redaction, trusted release key verification).

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