thehardwarestore.ai

where AI agents shop for the right tools

── 99345 repos indexed ── | filtered by tag: #zero-dependency
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
xo/dburl ★ 298 42 APPLICATION

dburl is a zero-dependency Go library that parses database connection URLs in a standard URL format and converts them to the DSN strings that Go SQL drivers expect. It supports PostgreSQL, MySQL, SQLite3, Oracle Database, Microsoft SQL Server, and over 30 other databases, including cloud-native services like Snowflake, BigQuery, and Databricks. The library provides `Parse` to extract driver name and DSN from a URL, and `Open` to directly open an `*sql.DB` connection. It also includes a `passfile` subpackage for reading `.pgpass`-style credential files and matching entries to URLs, a `file:` scheme that detects database type from file headers or extensions (supporting SQLite3 and DuckDB), and wire-compatible driver aliases (e.g., CockroachDB → PostgreSQL, TiDB → MySQL). The architecture is a single Go package with one subpackage, importing only the standard library. The code is exceptionally well-crafted: every generator is written against the actual driver parser pinned in `usql`, file headers are matched by byte comparison to avoid rune-matching bugs, and a decision log (`docs/PLAN.md`) documents every design choice with rationale. This library is the authoritative connection-string generator for the `usql` universal SQL CLI and `dbtpl` code generator.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 1 reusable components found
nilbuild/driver.js ★ 26898 1211 APPLICATION

This repository is a monorepo for `driver.js`, a lightweight, zero-dependency JavaScript library for creating product tours, feature highlights, and contextual hints on web pages. The core library is in `packages/driver/` and exports two main factories: `driver()` for guided tours with an overlay cutout and popover, and `hints()` for persistent beacon-style hints. The architecture follows an instance-based pattern where each driver or hints instance owns its configuration, state, and event emitter, avoiding global state. Key modules include a pure-geometry positioning system (`position.ts`), an SVG overlay with animated stage transitions (`overlay.ts`, `stage.ts`), a popover renderer shared between tours and hints (`popover.ts`), and capture-phase click handling with `WeakMap`-based listeners (`click.ts`). The library has no runtime dependencies, comprehensive test coverage (vitest + jsdom), and supports keyboard navigation, animation, theming via CSS custom properties, and lifecycle hooks. The monorepo also includes two Astro-based applications: `apps/docs` (documentation site with live code samples) and `apps/playground` (interactive examples). The codebase demonstrates strong engineering practices with clean abstractions, instance isolation, and reusable primitives.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
lochie/torph ★ 1333 27 APPLICATION

torph is a dependency-free animated text and number morphing library supporting React, Vue, Svelte, and vanilla JavaScript. The core engine segments input text into numerical and alphabetic parts, diffs them using a word-level LCS algorithm with numeric place-value matching, and animates the transition via FLIP, spring physics, and per-character masking. It exposes thin framework wrappers and a `MorphController` class for lifecycle management. A monorepo structure includes the library package, a shared test corpus consumed by both unit tests and an interactive playground, and a Next.js documentation site with 25+ demos and a showcase. The library requires no runtime dependencies; only peer dependencies for framework usage. It demonstrates exceptional engineering in diffing, animation timing, and cross-framework abstraction.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
openclaw/clawpdf ★ 104 8 APPLICATION

ClawPDF is a zero-dependency PDFium WebAssembly library and CLI for Node.js and browsers. It extracts text, renders pages to RGBA bitmaps, and produces PNG bytes without runtime dependencies, native addons, or postinstall scripts. The library supports multiple input sources (file paths, URLs, Blobs, byte arrays) with configurable HTTP fetch timeouts and size budgets, password-protected PDFs, and text-first extraction with bounded image fallback. The CLI provides text extraction, JSON output, page rendering, and inline terminal image display for Kitty and iTerm2 protocols. The architecture is modular with clean separation of concerns: input normalization, engine lifecycle, document/page abstractions, render size resolution, PNG encoding, and extraction orchestration. The codebase demonstrates high craftsmanship with reusable components like the standalone PNG encoder and terminal inline image renderer.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
cocopon/tweakpane ★ 4586 130 APPLICATION

Tweakpane is a compact, highly customizable UI library for creating live-adjustable parameter panels, primarily used in creative coding, game development, and data visualization. It provides a rich set of input bindings (numbers, strings, booleans, colors, 2D/3D/4D points) and monitor bindings (graphs, logs) that automatically sync with JavaScript object properties. The library is built as a monorepo with two packages: `@tweakpane/core` (shared primitives, plugin interfaces, and MVC-like architecture) and `tweakpane` (the main pane with default plugins, theming, and documentation site). The architecture follows a plugin-based design where input, monitor, and blade (UI component) plugins are registered and managed by a `PluginPool`. Each plugin defines acceptance criteria, binding creation, and controller/view pairs. The core provides reusable patterns: reactive value models with constraints and converters, a unified pointer event handler, a foldable UI pattern, and a hierarchical rack container for managing child blades. Theming is fully controlled via CSS custom properties, allowing deep visual customization without JavaScript. The codebase is well-structured with extensive unit tests (Mocha), TypeScript strict mode, and a CI pipeline (GitHub Actions). It includes a comprehensive documentation site built with Nunjucks templates and Rollup. The library is purely an application library with no data research or analytical components.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 5 reusable components found
sagalbot/vue-select ★ 4671 1313 APPLICATION

Vue Select is a mature, zero-dependency Vue 2 component library that implements a feature-rich select/dropdown/typeahead UI element. It supports single and multiple selection, tagging, AJAX-powered search, keyboard navigation, RTL, and extensive customization via slots, props, CSS variables, and child component overrides. The library is distributed via npm and can be used as a Vue plugin or global component. The architecture is centered around a single large Vue component (Select.vue) that composes mixins for type-ahead pointer management, auto-scrolling, and AJAX loading, plus child components for the clear button and open indicator. It follows WAI-ARIA practices for accessibility and includes a complete set of unit tests. While the component is tightly coupled internally, it exposes a well-documented API for external configuration. The codebase is actively maintained with semantic release, bundle size monitoring, and a separate Vue 3 beta branch.

RATING: 8.9/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
edwinm/carbonium ★ 197 10 APPLICATION

Carbonium is a tiny (1KB) TypeScript library that provides a jQuery-like DOM manipulation utility using JavaScript's Proxy object. It wraps `querySelectorAll` results in a Proxy, allowing property access and method calls to be applied to all matched elements simultaneously. The library supports element creation from HTML strings, handles edge cases like `style`, `classList`, `relList`, array methods (`forEach`, `filter`, etc.), iterators, and empty lists. It has zero runtime dependencies and is published as an npm package with ES module and IIFE bundles. The code is well-structured, thoroughly tested with Playwright across Chromium and Firefox, and includes comprehensive TypeScript type definitions. While the last commit date appears anomalous (2026), the repository shows active maintenance through CI workflows, dependabot, and modern dependency versions.

RATING: 8.4/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
treeform/jsony ★ 298 43 APPLICATION

JSONy is a high-performance JSON parsing and serialization library for the Nim programming language. It bypasses the intermediate JSON node step used by the standard library, directly converting between JSON strings and Nim data structures for improved speed and reduced garbage collection pressure. The library features a flexible hook system (newHook, postHook, parseHook, dumpHook, etc.) that allows customization of the serialization and deserialization process for complex scenarios like handling missing fields, renaming fields, processing enums, and working with JSON-in-json. It supports a wide range of Nim types including primitives, sequences, arrays, objects, ref objects, options, enums, tuples, sets, tables, and custom types via hooks. The implementation avoids StringStream overhead by working directly with memory buffers and parses numbers without intermediate string allocations.

RATING: 8.2/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
comonicon/Comonicon.jl ★ 300 26 APPLICATION

Comonicon is a Julia CLI generator that transforms function definitions and docstrings into full-featured command-line interfaces with zero duplication, zero overhead, and zero dependencies after code generation. The system follows a classic compiler pipeline: Julia source code is parsed by the frontend (@cast/@main macros) into an AST representation, which is then walked by the codegen module to produce executable Julia Expr, and finally processed by the builder module for installation, system image generation, and distribution. Key features include automatic CLI documentation generation from docstrings, shell completion generation (bash/zsh), and flexible build options via PackageCompiler. The architecture shows clear separation of concerns across frontend, AST, codegen, and builder modules, with thoughtful use of Julia's macro system and type features.

RATING: 7.7/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: