Turn OpenAPI schemas into interactive mock API workspaces in seconds.
GhostAPI is a developer-first platform for generating realistic mock REST APIs from OpenAPI schemas. Create a project, import your schema, and instantly get a fully interactive API workspace with request testing, response simulation, request logs, environments, mock behavior controls, and realistic fake data generation.
Built for:
- frontend developers
- UI engineers
- indie hackers
- integration testing
- product demos
- backend-independent development
Frontend development constantly gets blocked by:
- unfinished backends
- unstable APIs
- changing contracts
- missing environments
- fake JSON files
- unrealistic mocks
Most existing solutions either:
- feel bloated
- require too much setup
- look outdated
- separate testing from configuration
- become difficult to maintain
GhostAPI fixes this by turning your OpenAPI schema into a complete API simulation workspace instantly.
You can:
- explore endpoints
- send requests
- inspect responses
- simulate failures
- configure auth
- test loading states
- inspect logs
- manage environments
without writing backend code.
Create Project
↓
Upload OpenAPI Schema
↓
Generate API Workspace
↓
Test APIs InstantlyGhostAPI combines:
- endpoint browsing
- request building
- response inspection
- mock configuration
into a single workspace.
No separate endpoint editor. No disconnected playground. No unnecessary dashboard hopping.
Everything happens in one flow:
Request → ResponseSupports:
.json.yaml
OpenAPI 3.x schemas.
GhostAPI automatically:
- validates schemas
- extracts endpoints
- groups routes
- generates mock behavior
- creates realistic responses
Endpoints are automatically grouped by tags and categories.
Example:
Authentication
POST /users/login
POST /users/signup
Products
GET /products
POST /products
Orders
GET /orders
POST /ordersTest requests directly inside the API Workspace.
Supports:
- headers
- query params
- auth
- request body
- environments
- JSON editing
Inspired by tools like:
- Scalar
- Postman
- Insomnia
but intentionally more focused and minimal.
GhostAPI generates believable responses automatically.
Examples:
- real names
- emails
- avatars
- UUIDs
- prices
- nested objects
- arrays
Example:
{
"id": "usr_91b2",
"name": "Sarah Johnson",
"email": "sarah@example.com"
}Configure API behavior globally or per endpoint.
Supports:
- latency simulation
- error rates
- auth simulation
- response modes
- pagination behavior
- cache behavior
Example:
Latency: 1200ms
Error Chance: 15%
Auth: RequiredManage multiple environments:
- development
- staging
- production
- local
- QA
Each environment supports:
- base URLs
- variables
- headers
- auth settings
- CORS configuration
Inspect incoming requests in real time.
Supports:
- request history
- response inspection
- headers
- timing
- status codes
- request metadata
The logs experience is designed to feel:
- operational
- technical
- low-noise
instead of analytics-heavy.
Manage schemas directly inside projects.
Supports:
- schema replacement
- version history
- validation
- schema metadata
- server definitions
Projects contain:
- schemas
- environments
- logs
- mock behavior
- members
- API workspaces
Projects exist independently from schemas.
Schemas are attached to projects.
- Next.js App Router
- TypeScript
- Tailwind CSS
- shadcn/ui
- React
- Vite
- TypeScript
- Tailwind CSS
- shadcn/ui
- Zustand
- TanStack Query
- React Hook Form
- Monaco Editor
- Hono
- TypeScript
- Zod
- Prisma
- PostgreSQL
- Redis
- Docker
- Turborepo
OpenAPI Upload
↓
Parser Engine
↓
Normalized Endpoint Model
↓
Mock Generator
↓
Runtime Server
↓
API Workspaceapps/
web/ → Next.js frontend
app/ → React/Vite protected app
server/ → Hono backend
packages/
parser/ → OpenAPI parser
runtime/ → dynamic runtime engine
mock-engine/→ fake data generation
types/ → shared types
ui/ → shared UI components
config/ → shared config
eslint-config/ → shared lint config- Node.js 20+
- pnpm 10+
- Docker
git clone https://github.com/yourname/ghostapi.git
cd ghostapipnpm installCopy the tracked examples before starting services:
cp .env.example .env
cp apps/app/.env.example apps/app/.envThe root example matches docker-compose.yml defaults:
DATABASE_URL=postgresql://ghostapi:ghostapi@localhost:5432/ghostapi
REDIS_URL=redis://localhost:6379
NEXT_PUBLIC_API_URL=http://localhost:3001
NEXT_PUBLIC_APP_URL=http://localhost:3002
VITE_API_URL=http://localhost:3001
VITE_APP_NAME=GhostAPI
PORT=3001
LOG_LEVEL=info
NODE_ENV=development
CORS_ORIGINS=http://localhost:3000,http://localhost:3002
JWT_SECRET=change-me-change-me-change-me-change-medocker compose up -dpnpm --filter @ghostapi/server prisma:generate
pnpm --filter @ghostapi/server prisma:migratepnpm devDefault local ports:
apps/web: http://localhost:3000apps/server: http://localhost:3001apps/app: http://localhost:3002packages/uiStorybook: http://localhost:6006
Single-app commands:
pnpm --filter @ghostapi/web dev
pnpm --filter @ghostapi/server dev
pnpm --filter @ghostapi/app dev
pnpm --filter @ghostapi/ui storybookRoot scripts are defined in package.json and run through Turborepo:
pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm format:checkFormatting can be applied with:
pnpm formatCI mirrors the main verification flow: install dependencies, generate the Prisma client, then run lint, typecheck, tests, and build with Postgres and Redis services.
Future coding-agent sessions should start with AGENTS.md. It documents the current workspace
state, do-not-edit generated paths, package boundaries, command map, and "done when" criteria.
GhostAPI is intentionally designed to feel:
- technical
- focused
- operational
- infrastructure-grade
The product avoids:
- bloated SaaS dashboards
- analytics spam
- excessive cards
- cluttered layouts
- over-designed marketing UI
The UI language is inspired by:
- terminal environments
- developer tools
- infrastructure software
- API explorers
GhostAPI prioritizes:
- clean architecture
- strict typing
- isolated packages
- contributor friendliness
- long-term maintainability
This is not meant to become:
- a generic API management platform
- a corporate monitoring suite
- an enterprise analytics dashboard
The focus remains:
fast API simulation for frontend developers.
- OpenAPI support
- REST mock APIs
- unified API workspace
- environments
- request logs
- mock behavior controls
- schema management
- GraphQL support
- persistent mock states
- advanced schema handling
- realtime request streaming
- tRPC support
- AI-assisted edge cases
- snapshot testing
- contract testing
- collaboration
GhostAPI never executes uploaded schemas as code.
Uploaded files are:
- validated
- sanitized
- parsed safely
before processing.
Contributions are welcome.
Before opening a PR:
- run tests
- follow lint rules
- keep types strict
- avoid unnecessary abstractions
- avoid introducing
any
GhostAPI aims to become:
the fastest way to simulate APIs during frontend development.
No fake JSON files. No waiting on backend teams. No boilerplate mock servers.
Just:
Create project
↓
Import schema
↓
Start buildingMIT License.
