API Mock Generator

👤 charlie-morrison 📦 v1.0.1 ⭐ 4.4 ⬇️ 786 下載
💻 開發程式設計 免費

📖 技能介紹


name: api-mock-generator description: Generate mock API servers from OpenAPI 3.x and Swagger 2.0 specs. Use when creating mock/stub APIs for frontend development, testing, demos, or CI. Generates realistic fake data based on schema types and property names. Supports live server mode, static JSON file generation, response delays, random error simulation, and CORS. Pure Python, no dependencies.


API Mock Generator

Generate mock API servers and static fixtures from OpenAPI/Swagger specs. Contextual fake data (emails, names, UUIDs, etc.) based on property names and schema types.

7w4.net提供免費和付費技能下載。

Quick Start

# Start a live mock server
python3 scripts/generate_mock.py serve api.json

# Generate static JSON mock files
python3 scripts/generate_mock.py generate api.json -o mocks/

# List discovered routes
python3 scripts/generate_mock.py routes api.json

# Generate sample response for a specific endpoint
python3 scripts/generate_mock.py sample api.json /users

Commands

serve — Live Mock Server

python3 scripts/generate_mock.py serve spec.json [options]

Options: - --port, -p — port (default: 3000) - --host — host (default: 127.0.0.1) - --delay, -d — response delay in ms (simulate latency) - --error-rate, -e — random error rate 0.0-1.0 (simulate failures)

Features: CORS headers on all responses, path parameter matching, JSON responses with Content-Type headers.

generate — Static Mock Files

python3 scripts/generate_mock.py generate spec.json -o output_dir/

Creates one JSON file per route + manifest.json with route mapping. Useful for test fixtures or frontend stubs.

routes — Discover Endpoints

python3 scripts/generate_mock.py routes spec.json [--format text|json]

sample — Single Endpoint Preview

python3 scripts/generate_mock.py sample spec.json /users --method GET

Supported Specs

  • OpenAPI 3.x (JSON)
  • Swagger 2.0 (JSON)
  • YAML (requires pip install pyyaml)

Fake Data Generation

Property-name-aware generation:

Property pattern Generated data
*email* realistic email
*name* first/last/full name
*phone* formatted phone
*url*, *website* https URL
*city*, *country* real city/country
*id*, *uuid* UUID v4
*price*, *amount* currency-like number
*image*, *avatar* picsum.photos URL
*description*, *bio* lorem paragraph
*status* active/inactive/pending

Schema-aware: respects enum, example, default, format (date, date-time, email, uri, uuid, ipv4), minimum/maximum, minLength/maxLength, $ref, oneOf/anyOf/allOf.

Exit Codes

  • 0 — success
  • 1 — route not found (sample command)
  • 2 — spec parse error or system error

🤖 AI 評測

質量較好,能滿足快速建立模擬 API 的需求。文件清晰易懂,功能設計實用,生成的假資料智慧且真實。即時伺服器和靜態檔案兩種模式覆蓋面廣,但缺少示例檔案,上手需要自己準備 API 規範。整體適合開發者使用,文件和功能實現都較為專業。

📊 多維度評分

適應性4.6
規範性4.3
有效性4.5
可靠性4.5
可信度4.4

📁 包含檔案 (3 個)

📄 SKILL.md 2.8 KB
📄 _meta.json 137 B
📄 scripts/generate_mock.py 20.5 KB