Waiting on unreleased backend endpoints is one of the most persistent bottlenecks in modern microservice architectures. MockForge solves this by providing schema-driven, dynamic synthetic mock APIs that behave like production services under load.
Schema-Driven Mock Generation
Instead of static JSON files that drift from actual implementations, MockForge parses Pydantic models or OpenAPI specifications to generate contextual, state-aware responses. It handles relational constraints, dynamic edge cases, and deterministic seeding for reproducible CI/CD pipelines.
from mockforge import MockEngine, Field
from pydantic import BaseModel
class UserProfile(BaseModel):
user_id: str = Field(provider="uuid4")
email: str = Field(provider="email")
latency_ms: int = Field(provider="random_int", min=20, max=150)
engine = MockEngine()
engine.register_route("/api/v1/users/{id}", model=UserProfile, status_code=200)
engine.start(port=8080)Injecting Faults and Latency for Resilience
True system resilience requires testing failure modes before deployment. MockForge allows you to declaratively inject synthetic network latency, rate limits, and payload corruption directly into mock routes without altering application logic.
CI/CD Integration and Headless Execution
Run MockForge inside Docker containers or light Python micro-environments during automated integration test runs. By standardizing mock definitions across engineering teams, frontend and QA pipelines execute in total isolation from upstream services.