Stubrix
Advanced API Engineering, Mocking & Developer Productivity Platform — dual mock engine (WireMock + Mockoon), contract testing, chaos engineering, multi-protocol (GraphQL/gRPC/Kafka), observability, LocalStack AWS simulation and more.
Install / Use
/learn @marcelo-davanco/StubrixREADME
Stubrix

Advanced API Engineering, Mocking & Developer Productivity Platform
Stubrix is a unified hub for simulation, testing, and observability of APIs and microservices throughout the entire development lifecycle. From basic mocking to distributed tracing, contract testing, chaos engineering, event-driven simulation, and cloud service mocking — all in a single platform, running locally with Docker.
"Eliminates the 'works on my machine' problem" — simulate AWS, Kafka, PostgreSQL, gRPC, GraphQL, Keycloak and any REST API locally with full fidelity.
🏆 What makes Stubrix different
Stubrix covers the full API development lifecycle in a single tool — no stitching together five different platforms:
| Capability | What it does |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| Dual Mock Engine | WireMock (Java) or Mockoon (Node.js) — same mocks, zero lock-in, one command to switch |
| Multi-Protocol | REST, GraphQL, gRPC, WebSockets, Kafka, RabbitMQ — all mockable in one place |
| Contract Testing | Pact Broker integration — verify that producer and consumer contracts match before deploying |
| Chaos & Resilience | Fault injection (latency, errors, payload corruption) + Toxiproxy network-level chaos |
| Cloud Simulation | LocalStack for AWS (S3, SQS, SNS, DynamoDB, Lambda) — zero cloud cost during development |
| Object Storage | MinIO (S3-compatible) — store large mock bodies and database snapshot archives |
| Distributed Tracing | Jaeger + OpenTelemetry — follow a request across services during local testing |
| Prometheus Metrics | Built-in metrics exposition + Grafana dashboards — observe the mock server itself |
| Performance Testing | k6 scripts (smoke, load, stress) with baseline regression CI gate |
| Identity & Access | Keycloak and Zitadel — real OAuth2/OIDC token flows locally |
| AI-Native (MCP) | 3 MCP servers with 100+ tools — manage everything from your AI coding assistant |
| Database Snapshots | PostgreSQL pg_dump/psql, MySQL mysqldump, SQLite, MongoDB mongodump/mongorestore — snapshot and restore DB state alongside mocks |
| Service Control Panel | Enable/disable 24 infrastructure services, configure, backup and restore all settings — no manual Docker commands |
| Visual Control Panel | NestJS 11 API + React 19 Dashboard — no CLI-only workflows |
Requirements
- Node.js 24 + npm 10+
- Docker (required for mock engines, databases, and infrastructure services)
pg_dump/psql(optional, for real PostgreSQL snapshot/restore)
🏗️ Architecture Overview
Stubrix is a monorepo (npm workspaces) built on three core layers:
┌─────────────────────────────────────────────────────────────────┐
│ Developer Interfaces │
│ React 19 Dashboard │ CLI (@stubrix/cli) │ VS Code Extension │
│ AI Assistants via MCP (Windsurf, Cursor, Claude) │
└──────────────────────────┬──────────────────────────────────────┘
│ HTTP / WebSocket
┌──────────────────────────▼──────────────────────────────────────┐
│ @stubrix/api — NestJS 11 Control Plane (port 9090) │
│ │
│ Core: projects · mocks · recording · logs · databases │
│ Quality: governance · coverage · contracts · chaos │
│ Intelligence: AI/RAG · stateful mocks · time machine │
│ Protocols: GraphQL · gRPC · webhooks · events (Kafka/MQ) │
│ Enterprise: auth/RBAC · templates · multi-tenancy │
│ Observability: metrics · tracing · performance testing │
│ Cloud: LocalStack · MinIO · Keycloak · Zitadel │
└──────────────────────────┬──────────────────────────────────────┘
│ Docker profiles
┌──────────────────────────▼──────────────────────────────────────┐
│ Infrastructure Layer (20+ Docker profiles) │
│ │
│ Mock Engines: WireMock · Mockoon │
│ Databases: PostgreSQL · MySQL · SQLite · MongoDB │
│ Messaging: Kafka (Redpanda) · RabbitMQ │
│ Protocols: GripMock (gRPC) │
│ Cloud: LocalStack · MinIO · Keycloak · Zitadel │
│ Observability: Prometheus · Grafana · Jaeger │
│ Chaos: Toxiproxy │
│ Contracts: Pact Broker │
└─────────────────────────────────────────────────────────────────┘
Monorepo packages
| Package | Description |
| --------------------------- | ----------------------------------------------------------- |
| @stubrix/api | NestJS 11 control plane — 28 modules, REST API + WebSockets |
| @stubrix/ui | React 19 + Vite 7 dashboard host |
| @stubrix/mock-ui | Mock server microfrontend |
| @stubrix/db-ui | Database management microfrontend |
| @stubrix/shared | TypeScript types shared across all packages |
| @stubrix/cli | Standalone CLI (stubrix binary) |
| @stubrix/vscode-extension | VS Code sidebar + commands |
| stubrix-mcp | MCP server — full Stubrix API (100+ tools) |
| wiremock-mcp | MCP server — WireMock Admin API (16 tools) |
| docker-mcp | MCP server — Docker Compose management (12 tools) |
📂 Project Structure
stubrix/
├── packages/
│ ├── shared/ @stubrix/shared — TypeScript types
│ ├── api/ @stubrix/api — NestJS 11 (27 modules)
│ │ └── src/
│ │ ├── projects/ Project CRUD
│ │ ├── mocks/ Mock CRUD + WireMock integration
│ │ ├── recording/ Traffic recording (4 modes)
│ │ ├── logs/ REST + WebSocket (Socket.IO)
│ │ ├── databases/ Snapshot/restore + project DB configs
│ │ ├── stateful-mocks/ Stateful scenario machine
│ │ ├── import/ HAR, Postman, Insomnia, OpenAPI import
│ │ ├── governance/ Spectral OpenAPI linting
│ │ ├── coverage/ Mock hit/miss coverage analysis
│ │ ├── intelligence/ AI/RAG (ChromaDB + OpenAI)
│ │ ├── scenarios/ Time machine: capture & restore state
│ │ ├── contracts/ Pact Broker contract testing
│ │ ├── chaos/ Fault injection (latency, errors)
│ │ ├── chaos-network/ Toxiproxy network chaos
│ │ ├── webhooks/ Webhook receiver, replay, simulator
│ │ ├── events/ Kafka + RabbitMQ event publishing
│ │ ├── protocols/ GraphQL SDL + gRPC via GripMock
│ │ ├── auth/ API keys, RBAC, multi-tenancy
│ │ ├── templates/ Environment templates with variable substitution
│ │ ├── metrics/ Prometheus + app metrics
│ │ ├── performance/ k6 test runner + baselines
│ │ ├── tracing/ Jaeger + OpenTelemetry
│ │ ├── cloud/ LocalStack AWS integration
│ │ ├── storage/ MinIO object storage
│ │ ├── iam/ Keycloak + Zitadel IAM
│ │ └── settings/ Service control panel (F34)
│ ├── ui/ @stubrix/ui — React 19 + Vite 7 host
│ ├── mock-ui/ @stubrix/mock-ui — Mock management microfrontend
│ ├── db-ui/ @stubrix/db-ui — Database management microfrontend
│ ├── cli/ @stubrix/cli — Standalone CLI binary
│ ├── vscode-extension/ VS Code / Windsurf sidebar extension
│ └── mcp/
│ ├── stubrix-mcp/ MCP server — full Stubrix API
│ ├── wiremock-mcp/ MCP server — WireMock Admin API
│ └── docker-mcp/ MCP server — Docker Compose
├── mocks/
│ ├── mappings/ Wire
