thehardwarestore.ai

where AI agents shop for the right tools

── 99733 repos indexed ── | filtered by tag: javascript
zulip/zulip ★ 25998 10354 APPLICATION

Zulip is a production-grade, open-source team chat application built as a Django monolith with a real-time Tornado event server. The backend uses Django ORM with PostgreSQL, RabbitMQ for async queue processing (email, push notifications, URL previews), Memcached/Redis for caching and rate limiting, and a custom typed-endpoint decorator pattern for API validation. The frontend is a mix of legacy jQuery/Handlebars and modern TypeScript with Zod schemas, Webpack bundling, and extensive UI components for chat composition, streams, topics, user groups, and settings. The system exposes a REST API (used by mobile and desktop clients), webhook ingestion for 50+ third-party services, and a full billing/support subsystem via Stripe. The architecture is a single monolithic Django application with separate Tornado process for real-time push, alongside queue workers and cron-like management commands. Key entry points include the Django WSGI server, Tornado event server, management commands (e.g., manage.py), and webhook view functions. External dependencies include PostgreSQL, RabbitMQ, Redis, Memcached, Stripe, pgroonga (full-text search), pyvips (image processing), and numerous npm packages.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
vercel/ncc ★ 9840 325 APPLICATION

ncc (Node.js Compiler Collection) is a CLI tool and programmatic library that compiles a Node.js module along with all its dependencies into a single file, similar to gcc for C. It uses Webpack internally with custom loaders for TypeScript, asset relocation, shebang handling, and more. The output can be minified, source-mapped, and optimized with V8 compile cache. It is designed for serverless environments and npm package publishing. The codebase is well-structured with a clear separation between CLI (src/cli.js) and core API (src/index.js). It includes extensive integration tests covering dozens of popular npm packages (Express, React, Apollo, etc.). While the core logic is tightly coupled to Webpack, several utility functions are independently reusable.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
ljharb/qs ★ 8945 945 APPLICATION

qs is a JavaScript library for parsing and stringifying URL query strings with support for nested objects, arrays, and custom formatting. It is designed as a drop-in replacement for Node.js's built-in querystring module but with enhanced security features, including protection against prototype pollution, configurable depth limits, and parameter/array size limits. The library exposes three main functions: `parse`, `stringify`, and `formats`, all accessible from the single entry point `lib/index.js`. Internally, it uses a side-channel pattern for cycle detection and overflow tracking, and implements a chunked UTF-8 encoder to handle surrogate pairs safely. The codebase is well-tested with an extensive suite of edge-case tests, and it is distributed as an npm package with browser builds via Browserify. Architecturally, qs is a focused, single-purpose library with a clean separation of concerns: parsing logic in `lib/parse.js`, serialization in `lib/stringify.js`, shared utilities in `lib/utils.js`, and formatting constants in `lib/formats.js`. It follows a functional style with option normalization functions that validate and fill defaults, making the API robust against misuse. The library has a long history (over a decade) and is widely adopted (nearly 9000 stars), but its maintenance shows signs of high release churn and legacy support burdens, including backporting fixes to older Node.js versions (>=0.6) and maintaining outdated packaging artifacts like `bower.json` and `component.json`. Despite these legacy concerns, the core code is well-crafted, security-conscious, and actively maintained with frequent releases and responsive issue triage.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 1 reusable components found
givanz/VvvebJs ★ 8702 1836 APPLICATION

VvvebJs is a WYSIWYG web page builder that enables drag-and-drop creation of responsive websites using Bootstrap components. The system provides a visual editor with canvas, property panels, component library, and file management for constructing HTML pages. Key features include inline text editing, code viewing via CodeMirror, media handling, undo/redo functionality, and export capabilities. The architecture follows a modular pattern with core builder logic in libs/builder/builder.js, extensible via plugins and component definitions. Entry points include editor.html for initialization, save.php/save.js for persistence, and upload.php/scan.php for media management. The builder manipulates an iframe as the design canvas while maintaining component state and history for undo/redo operations.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
parca-dev/parca ★ 4995 266 APPLICATION

Parca is a continuous profiling platform that collects, stores, queries, and visualizes pprof profiles in real time. The Go backend ingests profiles via gRPC (both pprof and OpenTelemetry OTLP), normalizes them into Apache Arrow columnar format, and stores them in either FrostDB (default) or ClickHouse. It provides a rich gRPC+JSON API for querying profiles (flamegraph, table, source view, callgraph, pprof download), scraping Prometheus-style targets, managing debug information for symbolization, and sharing profiles via links. The TypeScript/React frontend delivers an interactive profiling UI with flamegraphs, tables, source views, metrics graphs, sandwich views, and comparison mode, all backed by efficient Arrow-based querying. The codebase demonstrates strong engineering with reusable patterns (generic caching, signed request abstraction, Arrow compaction), but carries some drift risk from dual storage backends, generated protobuf code, and a complex UI state layer built with multiple state management strategies.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
sqlectron/sqlectron ★ 4756 528 APPLICATION

Sqlectron is a cross-platform SQL client built with Electron, React, and Redux. It supports multiple database backends (MySQL, PostgreSQL, SQLite, SQL Server, Cassandra, MariaDB) via the separate `sqlectron-db-core` library. The application provides a GUI for managing server connections, browsing database schemas, writing and executing SQL queries, and exporting results. The main process handles all database communication and server configuration (including SSH tunnels and encrypted passwords), while the renderer process presents a modern, tabbed query editor with autocomplete and result visualization. The codebase is well-structured with clear separation of concerns, uses TypeScript throughout, and includes comprehensive end-to-end tests. It has been actively maintained with regular dependency updates and a shift from legacy libraries to modern alternatives (e.g., CodeMirror, Tailwind CSS, Radix UI).

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
nitrictech/nitric ★ 2016 121 APPLICATION

Nitric is a multi-cloud framework that enables developers to define cloud infrastructure and application logic in code, then deploy to AWS, Azure, or GCP. The framework provides infrastructure-as-code capabilities for cloud resources (APIs, storage, queues, topics, secrets, etc.) with runtime implementations for handling cloud service events. It features a modular architecture with core framework logic, cloud provider implementations, and a documentation site. The system uses a plugin-based worker system for handling cloud events and provides consistent abstractions across cloud providers through well-defined interfaces.

RATING: 8.3/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
microsoft/vscode-js-debug ★ 1970 369 APPLICATION

This repository is the official JavaScript debugger for Visual Studio Code (js-debug). It implements a full Debug Adapter Protocol (DAP) server that communicates with JavaScript runtimes via the Chrome DevTools Protocol (CDP). The debugger supports Node.js, Chrome, Edge, WebView2, VS Code extension hosts, Blazor, and WebAssembly (with DWARF symbols). The architecture is modular, with a core adapter layer handling breakpoints, source maps, evaluation, and console output; target-specific launchers for Node and browser processes; a UI layer providing VS Code commands, configuration providers, and profiling tools; and extensive telemetry and diagnostics infrastructure. Key entry points include the VS Code extension activation (`src/extension.ts`) and a standalone DAP server (`src/debugServerMain.ts`). The codebase uses dependency injection (Inversify), custom event emitters, and source map management with caching and rename support. External dependencies include `ws` (WebSocket), `got` (HTTP), `acorn`/`astring` (JavaScript parsing/code generation), and `@jridgewell/trace-mapping` (source map resolution). While primarily an application, it includes a diagnostic tool webview and telemetry for operational analysis.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 7 reusable components found
ing-bank/lion ★ 1961 348 APPLICATION

Lion is a monorepo maintained by ING Bank that provides a comprehensive, white-label web component library built on LitElement. It focuses on accessible, performant, and extensible form controls (inputs, checkboxes, radio groups, selects, datepickers, IBAN, phone, file, etc.), overlays (dialog, tooltip, popover, drawer), navigation components (accordion, tabs, pagination, steps), and localization/internationalization utilities. The library is architected around a rich mixin system (e.g., FormControlMixin, ValidateMixin, OverlayMixin, LocalizeMixin) that allows deep customization without sacrificing encapsulation. It also includes Node.js tooling: an AST-based dependency analyzer (providence-analytics), a documentation publishing tool, and a Babel plugin for extending docs. The codebase demonstrates strong software engineering practices: extensive test suites, accessibility-first design, scoped custom element registries, and a modular export map. However, there are signs of technical drift (outdated dependencies like ESLint 8, TypeScript 4.9, Chai 4) and some duplicated code (e.g., localizeNamespaceLoader switch statements repeated across packages, translation drift). The monorepo uses changesets for versioning and has active CI/CD.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
trynova/nova ★ 1947 80 APPLICATION

Nova is a custom ECMAScript (JavaScript) engine implemented in Rust, designed as a modular, embeddable runtime. It features a full bytecode compiler and virtual machine, a custom mark-compact garbage collector with typed arena allocation, and a shape-based (hidden class) object model for property access optimization. The engine closely follows the ECMAScript specification, implementing built-in objects (Promise, Array, Map, Set, Proxy, Temporal, etc.), module loading, and concurrent agents. Its architecture emphasizes data-oriented design and safe GC interaction through Rust-specific patterns like `GcScope`/`NoGcScope` and the `Bindable` trait. The project includes a standalone CLI (`nova_cli`) for running scripts and a test262 harness, currently passing approximately 80% of the official test suite. While actively developed, the engine has known limitations: many features are incomplete or behind feature flags (e.g., RegExp lacks full compliance, Temporal has placeholders, and several built-ins have `todo!()` stubs). The codebase exhibits high craftsmanship in its GC safety system, bytecode compiler, and object shape mechanics, but relies heavily on unsafe Rust and manual lifetime management. Nova is primarily a research-grade implementation aimed at embedding and exploration, not yet production-ready for general use.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
scality/cloudserver ★ 1941 260 APPLICATION

This repository implements Zenko CloudServer, an open-source, S3-compatible object storage server written in Node.js. It provides a single AWS S3 API endpoint that can route data to multiple backends including local filesystem, memory, AWS S3, Azure Blob, GCP, and Scality's own storage. The server handles the full S3 protocol: bucket and object CRUD, versioning, multipart uploads, lifecycle policies, replication, server-side encryption (SSE-S3, SSE-KMS), object lock (retention/legal hold), bucket policies, CORS, website hosting, and rate limiting. It integrates with external services for authentication (Vault), key management (KMIP), metadata storage (MongoDB), metrics (Utapi/Scuba), and replication/ingestion (Backbeat). The architecture is a multi-process Node.js application with separate daemons for the S3 API server, data server, metadata server, and passthrough file server. Configuration is dynamic via environment variables and a JSON config file, with support for live overlay updates through a WebSocket management channel. The codebase is organized into modular API handlers in `lib/api/`, reusable utilities in `lib/api/apiUtils/`, and backend abstractions for data, metadata, and authentication. Extensive functional and unit tests cover S3 API compliance across all supported backends. Key data flows: incoming S3 requests are authenticated via V4 signing, authorized against bucket policies and ACLs, then routed to the appropriate data backend based on location constraints. Metadata operations go through a wrapper that supports in-memory, file, or MongoDB backends. Rate limiting uses a distributed token bucket algorithm with Redis coordination. Metrics are pushed to Utapi and exposed via Prometheus. The system is designed for high availability with clustering and health checks.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
TryGhost/Ghost-CLI ★ 497 238 APPLICATION

This repository implements the Ghost CLI, a command-line tool for installing, configuring, updating, and managing Ghost CMS instances on Linux servers (Ubuntu). The system is a monolithic Node.js application with a plugin architecture. Its core responsibilities include: (1) resolving and downloading Ghost versions from the npm registry, (2) setting up required infrastructure (MySQL, nginx, systemd), (3) managing instance lifecycle (start/stop/restart), (4) handling content migration and import/export via the Ghost Admin API, (5) running health checks via the doctor command, and (6) handling major version upgrades with rollback support. Architecturally, the CLI is composed of a Command base class with yargs integration, a layered task system using listr2 for sequential/parallel operations, and an extension system that allows built-in plugins (nginx, systemd, MySQL) to inject commands, setup steps, doctor checks, and custom process managers. Configuration is managed via JSON files, and dependencies are installed using either yarn or pnpm. The codebase is well-structured with clear separation of concerns: commands in lib/commands/, tasks in lib/tasks/, utilities in lib/utils/, and extensions in extensions/. The tool depends on external services: npm registry for version resolution, Ghost Admin API for import/export, system tools (nginx, systemd, MySQL) for production setups, and acme.sh for SSL certificate management. It supports local development (direct node process) and production (systemd service). The codebase is actively maintained, with support for Ghost versions 1.x through 6.x, Node.js 22/24, and MySQL 5.6 through 9.4. While there is some legacy code for older Ghost versions, the overall architecture is modern, testable, and modular.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ruby2js/ruby2js ★ 491 36 APPLICATION

Ruby2JS is a Ruby-to-JavaScript transpiler with a modular filter architecture. It converts Ruby source code into JavaScript by parsing Ruby AST (via Parser gem or Prism) and applying a pipeline of filters that transform Ruby idioms into JS equivalents. The project includes a self-hosting capability (transpiles itself to JS), a Rails-like micro-framework called 'juntos' for building full-stack JS apps, and build tool plugins for Vite, esbuild, Rollup, and Webpack. It supports multiple output targets (ESM, CJS, JSX, React, Lit, Stimulus, etc.) and framework-specific filters for Rails, Phlex, Vue, Svelte, Astro, and more. The architecture is well-structured with clear separation between parsing, filtering, conversion, and serialization. The codebase is actively maintained with extensive test coverage and a monorepo structure for npm packages.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
yamadashy/tech-blog-rss-feed ★ 206 84 APPLICATION

This repository implements an RSS feed aggregator for corporate tech blogs. It fetches RSS/Atom feeds from a predefined list of company technology blogs, processes and enriches the feed items with metadata (Open Graph data, Hatena bookmark counts), generates aggregated feeds in Atom/RSS/JSON formats, and builds a static website using Eleventy to display the aggregated content. The site features a homepage with recent articles grouped by date, a 'hot' page showing popular articles based on Hatena bookmarks, individual blog pages, and a blog listing page. Updates are automated via GitHub Actions that run hourly on weekdays and every two hours on weekends.

RATING: 8.3/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
xsanisty/calx.js ★ 199 69 APPLICATION

Calx.js is a spreadsheet calculation engine that brings Excel-like functionality to web applications. It parses and evaluates formulas, manages workbooks/sheets/cells with dependency tracking, and provides both a programmatic API and jQuery plugin interface. The architecture features a modular Workbook→Sheet→Cell hierarchy with modern Chevrotain-based formula parsing, FormulaJS integration for function implementations, and efficient recalculation through dependency tracking. Key entry points include the main Calx class and jQuery plugin wrapper, with data flows proceeding from HTML attribute parsing through formula evaluation to DOM updates.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
select2/select2 ★ 25905 6129 APPLICATION

Select2 is a mature, widely-used JavaScript library that enhances native HTML select elements by providing a customizable dropdown with search, tagging, remote data loading (AJAX), infinite scrolling, and extensive internationalization (i18n). It operates as a jQuery plugin, replacing the standard `<select>` with a rich UI component while synchronizing state with the original DOM element. The library is structured modularly using AMD/UMD modules (built with RequireJS), exposing a core class (`Select2`) that coordinates data, selection, dropdown, and results adapters. It employs a decorator pattern (`Utils.Decorate`) to mix in optional behaviors like placeholders, clear buttons, and infinite scroll without deep inheritance chains, and uses an observable pattern for event handling. In production, Select2 transforms a `<select>` element into an interactive widget: it reads options from the DOM (or fetches them via AJAX), renders a searchable dropdown, manages user selections (single or multiple), and provides programmatic control through methods like `val`, `data`, `open`, and `close`. The architecture is plugin-friendly: every major component (data adapter, selection adapter, dropdown, results) can be replaced or extended, enabling custom themes, data sources, and interaction patterns. Key strengths include a well-tested codebase (QUnit tests across jQuery 1.x–4.x), a comprehensive i18n system with fallback chains, and a built-in diacritics normalization table for accent-insensitive search. However, the library is tightly coupled to jQuery and relies on older build tools (Grunt, JSHint, RequireJS), which constitutes medium technical drift. Despite this, it remains actively maintained with recent releases, CI pipelines, and community contributions.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
humanwhocodes/computer-science-in-javascript ★ 9109 1176 APPLICATION

This repository is a collection of classic computer science algorithms and data structures implemented in JavaScript. Each implementation is packaged as a separate npm module with comprehensive unit tests, documentation, and follows modern JavaScript conventions. The project serves both as an educational resource and a practical library for developers needing reliable implementations of fundamental CS concepts. The architecture is modular, with each algorithm/data structure isolated in its own directory with its own package.json, allowing for independent use and versioning.

RATING: 8.2/10 MAINT: maintained DRIFT: medium
▸ 5 reusable components found
beautifier/js-beautify ★ 8993 1426 APPLICATION

js-beautify is a production-grade code formatter for JavaScript, CSS, and HTML, available as both a Node.js library/CLI and a Python package. The core architecture is a tokenizer-pipeline: source text is scanned by an InputScanner, tokenized by language-specific tokenizers (JavaScript, CSS, HTML), and then processed by a Beautifier that manages indentation, line wrapping, brace styles, and operator positioning via a stateful flag system. The Output class provides efficient indentation caching and wrap-point management. The tool supports a wide range of configuration options (indent size, brace style, attribute wrapping, template languages) and includes built-in unpackers for obfuscated scripts (P.A.C.K.E.R, JavascriptObfuscator, etc.). A web interface is also provided, built with CodeMirror and RequireJS. The project maintains near-identical JavaScript and Python implementations, sharing test data generated from Mustache templates to ensure parity. The codebase is well-structured with clear separation of concerns (core, language-specific, CLI, web), extensive test coverage (including regression tests for hundreds of GitHub issues), and a mature build/release pipeline. However, the dual-codebase requirement increases maintenance burden, and some parts (e.g., the web UI, Debian packaging) show signs of drift. The large test data files and complex matrix-based test generation add brittleness.

RATING: 8.2/10 MAINT: maintained DRIFT: medium
▸ 5 reusable components found
nuejs/nue ★ 8821 259 APPLICATION

Nue is a monorepo for a standards-first web framework ecosystem, designed as a minimalist alternative to React/Next.js. It provides a complete toolchain for building content-driven websites and single-page applications using semantic HTML, CSS, and JavaScript with minimal abstraction. The core packages include Nuekit (CLI and build system), Nuedom (UI assembly with server-side rendering via a fake DOM), Nuemark (a Markdown flavor), Nueserver (edge-first HTTP server), Nueglow (syntax highlighting), Nuestate (URL-first reactive state management), and Nueyaml (predictable YAML parser). The framework emphasizes separation of concerns, design systems, and the UNIX philosophy of small composable tools. It is built on the Bun runtime and targets developers frustrated with heavy JavaScript frameworks, offering instant startup, universal hot reload, and a 1MB global install size. The repository also includes production templates (blog, SPA, full-stack) and the official Nue website (nuejs.org) with documentation, blog, and interactive examples.

RATING: 8.2/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
json-editor/json-editor ★ 4904 698 APPLICATION

This repository is a mature, well-structured JavaScript library that dynamically generates HTML forms from JSON Schema definitions. It is a client-side library that can be used as a standalone script or npm package. The core architecture is built on an abstract base class (`AbstractEditor`) with a rich plugin system for editors (string, number, array, object, etc.), themes (Bootstrap 3/4/5, Tailwind, Spectre, etc.), icon libraries, and template engines. It includes a full JSON Schema validator with support for draft-04, 07, and 2020-12 keywords, plus custom validators. The codebase demonstrates strong engineering practices: event-driven communication, extensible resolver patterns, and a modular design that separates concerns. However, the project is explicitly in maintenance mode, with active development moved to a fork (Jedison). This means new features are not expected, but critical bug fixes and security patches are still accepted. The codebase shows some technical drift: several third-party integrations (e.g., SimpleMDE, SignaturePad v1) are outdated, some themes (Foundation 3, Bootstrap 2) are legacy, and the code uses ES5 patterns. The test suite is extensive, with both unit tests (Jasmine) and end-to-end tests (CodeceptJS) covering many edge cases and real-world issues. Overall, it is a high-quality library for its domain, but its maintenance mode status limits its future viability for new projects.

RATING: 8.2/10 MAINT: stale DRIFT: medium
▸ 4 reusable components found
$ loading more...
$ submit: