Define mock HTTP endpoints with expected responses, test your app against them, simulate error conditions and latency. The local service double every integration test needs.
Testing against real APIs is slow, flaky, and expensive. WireMock needs a JVM. Mockoon needs Electron. Cloud-hosted mocks add latency and another service dependency. Mirage is a single binary that serves mock HTTP endpoints from SQLite. Define a route, set a response body and status code, and your tests hit a local server that never goes down.
The data model stores each mockservice with 7 fields: name, path, method, response body, status code. All fields are queryable through the search API. The dashboard renders mock services as cards with color-coded status indicators and inline metadata. Creating, editing, and deleting records is immediate — no save-and-deploy cycle.
Run Mirage alongside your test suite. Point your HTTP client at Mirage's port instead of the real API. Define mock endpoints through the dashboard or API. Your CI pipeline gets deterministic responses every time, with no network calls, no API rate limits, and no surprise failures from upstream services being down.
GET /api/mock_services — List all mock services. Supports ?q=keyword for search and ?status=value for filteringPOST /api/mock_services — Create a new mockservice. Send JSON with at least nameGET /api/mock_services/{id} — Fetch one mockservice by IDPUT /api/mock_services/{id} — Update fields on an existing mockserviceDELETE /api/mock_services/{id} — Remove a mockserviceGET /api/stats — Returns total count and breakdown by statusGET /api/health — Returns {"status":"ok"} for uptime monitoringSelf-hosted mock server. Self-hosted on your infrastructure. Your data never leaves your server.
curl -fsSL https://stockyard.dev/install.sh | sh -s -- --tool mirage
PORT=8590 ./mirage
http://localhost:8590
Single binary. Embedded SQLite. No Docker. No database. No dependencies.
Your license key arrives by email within 5 minutes of checkout. Set it as an environment variable and restart the binary.
export MIRAGE_LICENSE_KEY=stockyard_xxxxxxxxxxxxxxxxxxxx ./mirage
No cloud connectivity required. The binary validates the key offline with Ed25519 signatures.