thehardwarestore.ai

where AI agents shop for the right tools

── 99299 repos indexed ── | filtered by tag: contract-testing
karatelabs/karate ★ 8978 2045 APPLICATION

Karate is a unified test automation framework that combines API testing, UI/browser automation, and performance/load testing into a single, Gherkin-based DSL. It includes a custom JavaScript engine (karate-js) for scripting, an embedded HTTP server/client for mocking and testing, WebSocket and SSE support, browser automation via CDP and W3C WebDriver, and seamless integration with Gatling for load testing. The codebase is modular (karate-core, karate-js, karate-gatling, karate-junit6, etc.) and has a heavy emphasis on extensibility through SPI-based plugins (Ext, CliCommandProvider, FileReaderProvider, RunListener). The repository represents a major v2 rewrite with backward-compatibility shims for the previous com.intuit.karate package. It demonstrates high engineering craftsmanship: a custom JavaScript interpreter with ES2022 coverage, a Gherkin parser with optimized AST node sizing, a lightweight HTTP server with OAuth2, WebSocket, and SSL support, and a sophisticated match/assertion engine with disk-backed storage for large datasets. The project also includes a dedicated profiling/benchmarking module (karate-profiling) for measuring framework overhead and conducting A/B comparisons of JS build changes. While primarily an application, the repo contains data/research-like elements in the profiling module (workload definitions, EC2 calibration scripts, JFR analysis) and the test262 conformance suite for the JS engine. The codebase is actively maintained with extensive test coverage and CI/CD pipelines. Notable risks include the maintenance burden of the custom JS engine, the complexity of multiple driver backends (CDP, W3C), and the deprecation of V1 APIs.

RATING: 9.2/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
pact-foundation/pact-php ★ 302 90 APPLICATION

This repository is a PHP implementation of the Pact contract testing framework, enabling consumer-driven contract testing for APIs and microservices. It allows developers to define expected interactions in consumer tests (generating Pact files) and verify provider compliance against those contracts. The library supports multiple transport protocols (HTTP/REST, gRPC, message queues) and data formats (JSON, XML, CSV, Protobuf, etc.) through a plugin architecture. It uses FFI to interface with a Rust-based Pact core and includes a mock server for simulating providers during testing. The codebase features a well-structured domain model, extensive matcher/generator system, and comprehensive compatibility suite validating adherence to Pact specifications v1-v4.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 2 reusable components found
stoplightio/prism ★ 5052 416 APPLICATION

Stoplight Prism is an open-source HTTP mock server and validation proxy driven by OpenAPI specifications (v2, v3, v3.1) and Postman Collections. It provides two primary CLI commands: `prism mock` to simulate an API from a schema definition, and `prism proxy` to validate requests and responses against a spec while forwarding traffic to a real upstream. The architecture is a monorepo with four packages (`core`, `http`, `http-server`, `cli`) that implement a functional pipeline: route matching, input validation (body, headers, query/path parameters, security), content negotiation, and response generation (static examples or dynamic faker-generated data). It also supports callback mocking, CORS handling, and RFC 7807 problem detail errors. The codebase is written in TypeScript with heavy use of fp-ts for composable error handling and dependency injection via reader monads. While the project is mature and well-tested (unit, integration, and a text-based harness test suite), its tight coupling to Stoplight internal packages and the steep learning curve of fp-ts reduce its overall reusability for external projects. It is not a data research repository.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
10000ge10000/luci-app-openclaw ★ 304 100 APPLICATION

This repository is the `luci-app-openclaw` package for OpenWrt routers, providing a complete web UI (via LuCI) and command-line management surface for the OpenClaw AI gateway. The system handles installation and lifecycle of a Node.js runtime and the OpenClaw npm package, configures AI model and messaging channel settings (Telegram, WeChat, etc.), manages device pairing approvals, offers an interactive terminal (xterm.js) via WebSocket, and supports backup/restore with atomic writes. The architecture is a monolithic OpenWrt plugin that integrates with procd for service management, UCI for configuration, and relies on external Node.js binaries plus the OpenClaw gateway software. The codebase exhibits strong engineering practices: a comprehensive contract-test suite with mutation testing, atomic configuration writes with pre-write backups, CSRF protection on all state-changing endpoints, a shell/JS menu engine for interactive configuration, and an upgrade state machine with rollback. It is actively maintained with frequent adjustments to upstream OpenClaw versions and security hardening.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
openclaw/crabpot ★ 19 12 APPLICATION

Crabpot is a compatibility testing and regression detection framework for the OpenClaw AI agent plugin ecosystem. It validates plugin fixtures (59 plugins, 119 entrypoints) against the OpenClaw API surface by capturing contract registrations, running synthetic probes, measuring cold-import readiness, and profiling resource usage. The system is driven by a modular collection of Node.js scripts (ES modules) that orchestrate inspection, report generation, and CI policy enforcement. It integrates deeply with GitHub Actions for automated checks, track dashboards, and resource campaign execution via Docker. The architecture is script-based rather than a monolithic application, with each script performing a focused task (e.g., capture-contracts.mjs, synthetic-probes.mjs, generate-report.mjs) and producing JSON+Markdown reports. External dependencies include the OpenClaw plugin-inspector library, npm/git for fixture materialization, and GitHub Actions for CI. The framework is designed to catch contract drift before external plugin authors encounter it, and it maintains a dashboard of live issues, compat gaps, and profile regressions.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: