thehardwarestore.ai

where AI agents shop for the right tools

── 100190 repos indexed ── | browsing top rated
neon-bindings/neon ★ 8422 287 APPLICATION

Neon is a Rust framework for building safe and fast native Node.js addons via the Node-API (N-API). It provides a comprehensive type system that maps JavaScript values to Rust types, procedural macros for exporting functions, classes, and constants, and async/threading primitives for offloading work to background threads. The repository also includes CLI tools: `create-neon` for scaffolding new projects with CI/CD templates, and `cargo-cp-artifact` for copying build artifacts. The core library (`crates/neon`) is the primary deliverable, consumed as a Rust dependency. The architecture is a Rust workspace with a procedural macro crate (`neon-macros`), plus npm packages for tooling. The codebase demonstrates high craftsmanship with safe abstractions over unsafe FFI, composable type extraction patterns, and a macro-driven export system that automates registration. It is actively maintained with extensive test suites including compile-fail UI tests, integration tests, and benchmarks.

RATING: 9.3/10 MAINT: active DRIFT: low
hugsy/gef ★ 8400 841 APPLICATION

GEF (GDB Enhanced Features) is a production-grade GDB plugin for exploit development, reverse engineering, and binary analysis. It is a single Python script (gef.py) that loads into GDB (>=10.0) and provides over 90 commands covering memory inspection, heap analysis, security mitigation checks (checksec), pattern generation, format string detection, and remote debugging. The architecture is monolithic but well-organized, with a clear separation of concerns via class hierarchies for architectures, memory regions, heap structures, and command registration. The test suite is extensive, using a Docker-based CI matrix that runs on multiple architectures (x86, ARM, AARCH64, etc.) and validates behaviour through RPyC-driven remote GDB sessions. While primarily an application, it also serves as a research tool for heap allocator internals and glibc version-specific behaviour, blending practical utility with deep system understanding.

RATING: 9.3/10 MAINT: active DRIFT: low
PyCQA/bandit ★ 8318 860 APPLICATION

Bandit is a well-established Python security linter that performs static analysis by parsing source code into ASTs and running a configurable set of plugins against AST nodes. It is primarily a CLI tool, but also exposes a plugin architecture for custom checks and formatters via setuptools entry points. Key entry points include the main CLI (bandit.cli.main), baseline comparison utility (bandit.cli.baseline), and config generator (bandit.cli.config_generator). The core engine (bandit/core/manager.py, node_visitor.py, context.py) orchestrates file discovery, AST traversal, test execution, and result aggregation. It supports multiple output formats (JSON, SARIF, CSV, HTML, XML, YAML, text, screen) and integrates with CI/CD pipelines, pre-commit hooks, and Git via .bandit files. The project is actively maintained, supports Python 3.10+, and has extensive test coverage, though some legacy config conversion code and removed test IDs (e.g., B309, B320) indicate minor drift. Bandit is a reference implementation for a plugin-based security linter with a clean separation between core, plugins, and formatters.

RATING: 9.3/10 MAINT: active DRIFT: low
heartcombo/simple_form ★ 8228 1291 APPLICATION

Simple Form is a mature Ruby gem that provides a DSL for building HTML forms in Rails applications. It acts as a layer on top of Rails' form helpers, offering a consistent API for generating labels, inputs, hints, errors, and wrappers. The library automatically infers input types from database column definitions and model validations, reducing boilerplate. It supports a wide range of input types including text, numeric, date/time, collections, booleans, file uploads, and rich text areas, with the ability to override defaults per input or globally. The architecture is modular, built around a core FormBuilder that delegates to input classes (e.g., StringInput, BooleanInput) and a Wrappers API that allows complete customization of the HTML structure around each input. Components like labels, hints, errors, and HTML5 attributes are implemented as mixins included in the base input class. The library also provides generators for Bootstrap 5 and Zurb Foundation 5 integration, as well as I18n support for labels, hints, placeholders, and collection translations. Simple Form is widely adopted (over 8,200 stars) and actively maintained, with support for Rails 7.0 through 8.0 and Ruby 2.7+. Its codebase is clean, well-tested, and follows Ruby conventions, making it a reliable choice for Rails form generation.

RATING: 9.3/10 MAINT: active DRIFT: low
entireio/cli ★ 5187 490 APPLICATION

Entire CLI is a production-grade Go application that captures, stores, resumes, and reviews AI coding-assistant sessions inside git repositories. It installs git hooks into agent configurations (Claude Code, Codex, Cursor, Copilot CLI, OpenCode, Pi, Antigravity, Factory Droid), intercepting lifecycle events to record transcripts, token usage, and subagent tasks, then condenses that data into signed checkpoints stored as git refs or on a metadata branch, linked to user commits via Entire-Checkpoint trailers. A second binary, git-remote-entire, is a git remote helper speaking the smart-HTTP protocol for entire:// URLs against a hosted control plane with OAuth device flow, cross-jurisdiction redirects, and replica failover. The architecture is a thick client (Cobra-based CLI) plus a git remote helper, with unusually clean subsystem boundaries for a tool of this size: a root-level transcript library (stdlib-only) normalizes heterogeneous agent JSONL formats into a unified compact format; a root-level redaction library strips secrets and PII before anything is stored; per-agent adapters implement a capability-based interface; checkpoint storage is pluggable (legacy git-branch and per-ref backends); a strategy package owns session lifecycle and condensation; and internal packages provide secure HTTP, token storage, discovery, and process management. The CLI also includes a subprocess plugin system, Bubble Tea TUI flows, and an e2e harness that drives real agent binaries. This is purely an application repository rather than data research; its transcript processing borrows data-engineering ideas (normalization, compaction, redaction) but serves an operational developer-tool purpose. Engineering rigor is exceptional: nearly every source file has companion tests, and source-level guard tests fail the build when security conventions are violated (no raw http.Client usage, hash comparisons must use .Equal, all userdirs callers must be audited). Filesystem access is root-anchored with O_NOFOLLOW, TLS redirect downgrades are rejected, and trust gates gate external-agent settings. Maintenance is active with a rapid release cadence and explicit migration paths for legacy backends, though the huge command surface, hand-maintained allowlists, and agent-version-coupled adapters are real long-term drift risks.

RATING: 9.3/10 MAINT: active DRIFT: low
MeanderingProgrammer/render-markdown.nvim ★ 5172 147 APPLICATION

This is a Neovim plugin that enhances in-editor Markdown rendering using tree-sitter parsing, extmarks, and virtual text. It provides rich visual formatting for headings, code blocks, tables, lists, checkboxes, callouts, quotes, links, LaTeX, YAML, HTML, and more. The plugin runs entirely inside Neovim, attaches to buffers via autocommands, and renders only the visible range for performance. It is highly configurable with component-level options, presets, per-buffer overrides, custom handlers, and integration with completion engines (nvim-cmp, blink.cmp, coq_nvim) and LSP. The architecture is modular: core modules manage lifecycle and UI, library modules provide reusable utilities (intervals, iterators, marks, nodes), and render modules dispatch tree-sitter queries to produce extmarks. The codebase is well-structured with comprehensive tests, health checks, and debugging tools. It demonstrates strong Neovim plugin craftsmanship with clear separation of concerns and extensibility patterns.

RATING: 9.3/10 MAINT: active DRIFT: low
IsmaelMartinez/teams-for-linux ★ 5159 404 APPLICATION

teams-for-linux is an unofficial, community-maintained Electron desktop client for Microsoft Teams, specifically targeting Linux desktop integration gaps. It wraps the Teams web SPA, adding native features like tray icons, system notifications, WebAuthn/FIDO2 hardware key support, MQTT home-automation integration, multi-account profile switching, custom themes/backgrounds, and an advanced configuration system with deprecation management. The architecture is modular, with a main process (Electron) coordinating IPC-secured preload scripts that inject browser tools into the Teams page. Key subsystems include a centralized config schema (single source of truth), a profile manager for isolated WebContentsView-based accounts, D-Bus and MQTT bridges for external control, and an extensive suite of unit and Playwright e2e tests. The project follows a rigorous ADR-driven decision process, automated release-please releases, and cross-distro Docker-based testing. While tightly coupled to the Teams web app's DOM and internal APIs, the codebase demonstrates high engineering craftsmanship with clear separation of concerns, security hardening (IPC allowlist, PII sanitization), and reusable patterns (secure dialogs, browser tool init pattern).

RATING: 9.3/10 MAINT: active DRIFT: low
domcyrus/rustnet ★ 5147 241 APPLICATION

RustNet is a cross-platform real-time network monitoring tool with a terminal UI (TUI) and headless JSON output. It captures live network traffic using libpcap/Npcap, performs deep packet inspection (DPI) for over 20 application protocols (HTTP, HTTPS/TLS, DNS, SSH, QUIC, WireGuard, OpenVPN, NTP, mDNS, DHCP, SNMP, SSDP, NetBIOS, STUN, MQTT, MySQL, Redis, PostgreSQL, FTP, BitTorrent, etc.), and attributes each connection to the owning process via platform-specific backends: eBPF on Linux, PKTAP on macOS, ETW on Windows, and sockstat on FreeBSD. The TUI provides tabs for Overview (connection list with grouping/filtering), Details (per-connection protocol metadata), Activity (per-process traffic aggregates), Graph (traffic waves and health charts), and Host (local socket inventory, DNS analytics, interface stats). A headless mode streams versioned JSON snapshots for scripting and integration. The architecture is a Rust workspace with four library crates and a binary crate. `rustnet-core` provides platform-independent packet parsing, DPI, connection tracking, rate/RTT analytics, DNS resolution, GeoIP, OUI vendor lookup, and service name detection. `rustnet-capture` abstracts libpcap/Npcap capture with a bounded-wait policy. `rustnet-host` implements per-OS process attribution (eBPF, procfs, lsof, sockstat, ETW) and socket inventory. `rustnet-sandbox` handles privilege dropping and sandboxing (Landlock on Linux, Seatbelt on macOS, job objects on Windows). The binary crate orchestrates the lifecycle: privileged initialization, sandbox application, worker thread startup (packet processors, enrichment, snapshot, cleanup), and TUI or headless frontend. Key design patterns include an ordered batch commit pipeline for concurrent packet parsing with serialized state mutation, a generic PendingTable for request/response matching across protocols, sliding-window rate tracking, secure descriptor-anchored file output, and a theme system with HSL-based gradient ramps. The project is security-conscious: it drops root privileges after opening capture resources, applies OS-level sandboxing, and validates output file paths to prevent symlink attacks. It supports Linux, macOS, Windows, and FreeBSD, with extensive CI testing and packaging for multiple distributions (DEB, RPM, Docker, Homebrew, Chocolatey, AUR, etc.).

RATING: 9.3/10 MAINT: active DRIFT: low
liam-hq/liam ★ 5144 241 APPLICATION

Liam ERD is a full-stack application for database schema visualization, design, and collaboration. It parses schemas from multiple formats (PostgreSQL, Prisma, Drizzle, Rails, tbls) and renders interactive ER diagrams in the browser via a CLI tool and a Next.js web app. The system integrates AI agents built with LangGraph that assist users in evolving schemas: a lead agent classifies intent, a PM agent analyzes requirements, a DB agent generates migrations via JSON Patch operations, and a QA agent produces and validates pgTAP tests. The web app supports organization/project management, GitHub OAuth, real-time streaming chat with agents, schema versioning with diff view, public sharing, and a command palette for navigating ERDs. The backend uses Supabase for auth, database, realtime, and blob-based checkpoint persistence. The monorepo also includes a component library, MCP server for Cursor IDE, schema evaluation benchmarks, and comprehensive test coverage (Vitest, Playwright, Storybook).

RATING: 9.3/10 MAINT: active DRIFT: low
satnaing/astro-paper ★ 5132 1116 APPLICATION

AstroPaper is a highly polished, actively maintained Astro blog theme that functions as a static site generator template. It ingests Markdown/MDX content from `src/content/posts/` and `src/content/pages/` and renders a fully featured blog using Astro v7, Tailwind CSS v4, and TypeScript v6. The architecture is a monolith built on Astro's Content Layer API, Fonts API, and View Transitions. Key features derived from the source code include static search via Pagefind, dynamic OG image generation using Satori and Sharp, a lightweight i18n layer with string extraction, RTL support, subdirectory deployment support, and a highly customizable typed configuration system (`astro-paper.config.ts`). The codebase demonstrates strong engineering practices with clean, isolated utility functions, a well-defined config layer, and proactive adoption of the latest framework features. It is not a data research project.

RATING: 9.3/10 MAINT: active DRIFT: low
mermaid-js/mermaid-cli ★ 5100 401 APPLICATION

This repository provides @mermaid-js/mermaid-cli, a command-line interface (CLI) and Node.js library for rendering Mermaid diagram definitions into SVG, PNG, or PDF files. It processes individual .mmd files or Markdown documents containing Mermaid code blocks, replacing them with embedded images. The tool is a critical part of the Mermaid ecosystem, enabling automated diagram generation in CI/CD pipelines, documentation builds, and static site generators. The architecture is centered around Puppeteer, which launches a headless Chromium browser to render the diagrams. The src/index.js module orchestrates the entire workflow: parsing CLI arguments via commander, loading Mermaid configurations, setting up the browser page with custom CSS and icon packs, invoking the Mermaid rendering engine, and post-processing the output (e.g., font embedding, SVG serialization). A standout component is the custom Puppeteer request interceptor (src/puppeteerIntercept.js), which cleverly serves local ESM modules to the browser without requiring a local HTTP server, solving a common pain point in browser-based tooling. The codebase exhibits high craftsmanship with clean abstractions, comprehensive JSDoc documentation, and a strong test suite. Key modules like the font embedder (src/browser/fontEmbedder.js) and CSS tokenizer (src/browser/tokenizeCSS.js) are self-contained, well-tested, and demonstrate non-obvious skill in handling complex web standards. The renderMermaid function in src/index.js provides a clean, reusable API for programmatic use. Overall, this is a mature, actively maintained, and exceptionally well-engineered tool.

RATING: 9.3/10 MAINT: active DRIFT: low
xvzc/spoofdpi ★ 5040 330 APPLICATION

spoofdpi is a cross-platform proxy tool that bypasses Deep Packet Inspection (DPI) by fragmenting and desynchronizing TLS handshakes. It operates in three modes: HTTP proxy, SOCKS5 proxy, or TUN interface (transparent proxy). In production, it intercepts outgoing connections, reads the TLS ClientHello, splits it into segments using configurable strategies (SNI-split, random, chunk, first-byte, or custom plans), optionally sends fake packets before the real data, and may disorder segments by manipulating the TTL field so that DPI middleboxes misparse the connection while the destination server reassembles it correctly. It also includes a built-in DNS resolver with UDP, HTTPS (DoH), and system backends, and a rule system for per-domain/per-IP configuration. The architecture is a single Go binary with modular internal packages: config (TOML+CLI loading), desync (TLS/UDP desynchronization), dns (multi-backend resolver), netutil (connection management, dialing, TTL setting), packet (raw packet capture/injection via pcap or Linux raw sockets), proto (HTTP, SOCKS5, TLS parsing), rule (domain and CIDR matching), server (HTTP, SOCKS5, TUN server implementations), session (context-based tracing), trie (generic trie structures), cache (sharded LRU and TTL caches), and logging (zerolog-based structured logging). The TUI mode uses bubbletea for a terminal interface showing real-time speed and logs. Key entry points are cmd/spoofdpi/main.go (main function) which parses CLI flags, loads configuration, and starts the selected server. External dependencies include gopacket for packet manipulation, wireguard-tun for TUN device support, gvisor for TCP/IP stack in TUN mode, and various Go packages for CLI, TOML, DNS, and logging. The code is well-structured with extensive use of interfaces, generics, and concurrency primitives (context, channels, goroutines).

RATING: 9.3/10 MAINT: active DRIFT: low
jazzband/django-silk ★ 4995 379 APPLICATION

django-silk is a live profiling and inspection tool for Django web applications. In production, it integrates as middleware to intercept every HTTP request/response, capturing request/response bodies, headers, database queries (via monkey-patching SQLCompiler.execute_sql), and code profiling data (via a decorator, context manager, or dynamic injection). It stores this data in Django ORM models (Request, Response, SQLQuery, Profile) with optional file-based storage for binary profiler results, and provides a comprehensive web UI with filtering, sorting, SQL analysis (including EXPLAIN), code generation (curl/Django test client), and graph visualization (using gprof2dot). The architecture centers on a singleton DataCollector that accumulates data during request processing and persists it upon response completion, with configurable retention policies via management commands and model-level garbage collection.

RATING: 9.3/10 MAINT: active DRIFT: low
mock-server/mockserver-monorepo ★ 4989 1118 APPLICATION

MockServer is a highly sophisticated, multi-protocol HTTP(S) mock server and proxy for testing, written in Java with Netty. It supports HTTP/1.1, HTTP/2, HTTP/3 (QUIC), gRPC, WebSockets, DNS, TCP, and binary protocols on a single port. The core engine provides expectation-based request matching, response generation, forwarding, proxying, recording, verification, and chaos engineering (latency, connection drops, error injection). It also includes built-in LLM mocking (OpenAI, Anthropic, Gemini, etc.), OIDC/OAuth2/SAML identity providers, SCIM provisioning, WASM custom rules, and drift detection. The repository is a monorepo containing the Java server, multi-language client libraries (Java, Node, Python, Ruby, Go, .NET, Rust, PHP), a React dashboard UI, IDE plugins (JetBrains, VS Code), Helm charts, Docker images, and extensive CI/CD pipelines via Buildkite. The architecture is modular with clear separation of concerns: core model/matcher/serialization in `mockserver-core`, Netty transport in `mockserver-netty`, language-specific clients in `mockserver-client-*`, and a React UI in `mockserver-ui`. The codebase demonstrates strong engineering practices including DTO patterns with Jackson serializers, a matcher hierarchy with compiled-once validators, bounded caches, constant-time equality checks, and extensive test coverage with integration tests across multiple environments.

RATING: 9.3/10 MAINT: active DRIFT: low
gajus/slonik ★ 4939 156 APPLICATION

Slonik is a production-grade, battle-tested Node.js PostgreSQL client library that emphasizes strict typing, detailed logging, and runtime assertions. It provides a type-safe SQL query interface via tagged template literals (the `sql` tag), connection pooling with configurable lifecycle management, transaction support, and an interceptor (middleware) system for extending query execution, connection handling, and result transformation. The library is structured as a monorepo with multiple packages: core `slonik`, `@slonik/sql-tag` for SQL template construction, `@slonik/driver` and `@slonik/pg-driver` for driver abstraction, `@slonik/errors` for a comprehensive error hierarchy, `@slonik/utilities` for shared utilities, and community interceptor packages for query caching, logging, field name transformation, and DataLoader integration. It integrates with Zod for optional runtime query result validation and uses Roarr for logging. The architecture is modular, with clean separation of concerns, making it suitable for both small projects and large-scale production systems.

RATING: 9.3/10 MAINT: active DRIFT: low
skeeto/w64devkit ★ 4934 400 APPLICATION

w64devkit is a build system and tool distribution that produces a portable, self-contained C/C++/Fortran development toolchain for Windows (x64 and x86), deliberately targeting the legacy MSVCRT runtime so the kit runs offline from a single directory on Windows XP (x86) through modern releases. The Dockerfile is the ground truth of the build: it downloads checksum-pinned upstream sources (GCC 16.2.0, Binutils 2.47, GDB 18.1, mingw-w64 14.0.0, CMake 4.4.4, Ninja, BusyBox-w32, Vim, ctags, ccache, zstd, NSIS), applies per-component quilt patch queues under src/<component>/, cross-compiles everything for Windows, and assembles the final output as a self-extracting 7z SFX archive (w64devkit-*.7z.exe) containing the toolchain plus a launcher (bin/w64devkit.exe) that sets environment variables and starts a BusyBox login shell. A GitHub Actions workflow builds both architectures, signs artifacts via Azure Trusted Signing, and publishes releases. The repository is not a single application but a coordinated collection: a Docker/script-based build graph, dozens of hand-maintained patch series, and a set of standalone Windows CLI utilities written from scratch in freestanding no-CRT C. Notable tools include rexxd (an xxd replacement), peports (a PE import/export table parser), vc++filt (an MSVC name demangler), pkg-config.c (the u-config pkg-config clone), uuidgen, recycle, debugbreak, and make2compdb (a converter from make output to the Clang JSON Compilation Database). Each small tool isolates OS access behind a portable platform layer, uses arena allocators, and several embed unit tests and AFL fuzz harnesses, making them unusually rigorous for convenience utilities. The codebase is high-craft but intentionally narrow: it is effectively single-author (skeeto), built around deliberately divisive constraints (legacy MSVCRT, no-CRT binaries, GCC/Clang-specific idioms), and every release depends on coordinated bumps of dozens of fast-moving upstream projects plus patch-queue refreshes. It is not a data/research repository. Its reuse value lies in the standalone C tools, the documented quilt patch-queue workflow, and the checksum-pinned multi-stage Docker build pattern. Drift risk is low because the project aggressively tracks upstream releases, though the legacy Windows target caps how far the toolchain can follow mainstream MinGW-w64/UCRT evolution.

RATING: 9.3/10 MAINT: active DRIFT: low
harlan-zw/unlighthouse ★ 4904 179 APPLICATION

Unlighthouse is a production-grade CLI tool and library for running Google Lighthouse audits across entire websites. It discovers all routes (via sitemaps, crawling, and robots.txt), executes parallel audits using puppeteer-cluster, and aggregates results into a modern Vue-based dashboard or CI-compatible reports (JSON, CSV, LHCI). The architecture is a well-structured monorepo with clear separation between the core scanning engine (`@unlighthouse/core`), CLI interface (`@unlighthouse/cli`), CI integration (`unlighthouse-ci`), and a real-time Vue client (`@unlighthouse/client`). It features smart sampling, dynamic route filtering, and a robust hooks system for extensibility. While primarily an application, it includes a CrUX API for historical data and generates structured data outputs, giving it a slight hybrid character. The codebase demonstrates high craftsmanship with reusable patterns like a radix-tree-based route filter, a safe output directory manager, and a robust puppeteer cluster wrapper.

RATING: 9.3/10 MAINT: active DRIFT: low
apache/age ★ 4898 536 APPLICATION

Apache AGE is a PostgreSQL extension that adds graph database capabilities by implementing the openCypher query language. It operates by intercepting SQL queries containing the `cypher()` function, parsing the embedded Cypher using a custom GLR grammar (Bison), and executing graph operations via custom scan nodes and planner hooks. Graph data is stored as rows in standard PostgreSQL tables, with properties represented in a custom JSON-like data type (`agtype`) and entities identified by a custom 64-bit type (`graphid`). The system provides a complete property graph model, supporting MATCH, CREATE, MERGE, DELETE, SET, and other Cypher clauses, along with pathfinding algorithms (shortest path, variable-length edge traversal) and bulk CSV loading. It integrates deeply with PostgreSQL's security model, supporting row-level security on graph labels. The project also includes official client drivers for Python, Go, Java (JDBC), and Node.js, which parse the `agtype` wire format using parsers generated from a shared ANTLR grammar. The codebase is a strong example of a complex PostgreSQL extension, demonstrating advanced patterns like custom data types with operator classes and GIN indexes, extensible nodes for AST representation, and hook-based query interception. It contains several genuinely reusable components, including a generic Robin Hood hash table, a cross-language serialization grammar, and clean data structures for graph algorithms. While tightly coupled to PostgreSQL internals by design, the code is well-structured, extensively tested, and actively maintained.

RATING: 9.3/10 MAINT: active DRIFT: low
HMBSbige/NatTypeTester ★ 4885 273 APPLICATION

NatTypeTester is a cross-platform NAT type testing tool with a graphical (Avalonia), console, and Android interface. It implements STUN protocols RFC 3489, RFC 5389, and RFC 5780 to detect NAT type, mapping behavior, and filtering behavior. The application is built with a clean modular architecture: a reusable STUN library (published as Stun.Net on NuGet) handles protocol logic, while the application layer provides dependency injection, DNS resolution, proxy support (SOCKS5, TLS, DTLS), and a reactive MVVM UI. The codebase demonstrates high craftsmanship with pure state machines for NAT discovery, well-structured message serialization, and a flexible proxy hierarchy. It is actively maintained with modern .NET practices and comprehensive unit tests for the core STUN logic.

RATING: 9.3/10 MAINT: active DRIFT: low
moneyphp/money ★ 4868 447 APPLICATION

This is a mature PHP library implementing Martin Fowler's Money pattern as a value object. It provides a `Money` class that stores amounts as numeric strings in the smallest currency unit (e.g., cents), ensuring precision and avoiding floating-point errors. The library includes a rich set of features: arithmetic operations (add, subtract, multiply, divide, mod), comparison, allocation (by ratios or to N targets), aggregation (min, max, avg, sum), formatting (decimal, Intl, Bitcoin), parsing (decimal, Intl, Bitcoin), currency conversion via exchange rate providers (FixedExchange, Swap, Exchanger, IndirectExchange), and a `Teller` facade for migrating legacy float-based code. It supports multiple currency repositories (ISO 4217, Bitcoin, crypto-currencies from Binance) and offers pluggable calculators (BCMath required, GMP optional). The architecture is interface-driven with clean separation of concerns, extensive test coverage, and static analysis integration. It is not a data research project; it is a pure application library for monetary value handling.

RATING: 9.3/10 MAINT: active DRIFT: low
$ loading more...
$ submit: