https://github.com/derekbar90/hypermock
An AI-powered CLI tool that generates mock APIs from natural language descriptions.
https://github.com/derekbar90/hypermock
Last synced: about 2 months ago
JSON representation
An AI-powered CLI tool that generates mock APIs from natural language descriptions.
- Host: GitHub
- URL: https://github.com/derekbar90/hypermock
- Owner: derekbar90
- License: isc
- Created: 2025-01-09T04:24:48.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2025-01-09T04:25:37.000Z (4 months ago)
- Last Synced: 2025-03-15T05:11:36.077Z (2 months ago)
- Language: TypeScript
- Size: 23.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Hypermock
An AI-powered CLI tool that generates mock APIs from natural language descriptions. Simply describe the API you need, and Hypermock will create a fully functional mock server with OpenAPI documentation.
## Features
- Generate OpenAPI specifications from natural language descriptions
- Automatically create mock endpoints with realistic data
- Interactive API documentation with Swagger UI
- AI-powered response generation
- Fallback to deterministic mock data when needed
- Direct LLM mode for dynamic response generation without OpenAPI specs## Prerequisites
- Node.js 16 or higher
- OpenAI API key## Installation
```bash
# Install globally
npm install -g hypermock# Or run directly with npx
npx hypermock
```## Usage
1. Set your OpenAI API key:
```bash
export OPENAI_API_KEY='your-api-key-here'
```2. Choose your preferred mode:
### OpenAPI Mode (Default)
Creates a mock API with OpenAPI specification and documentation:
```bash
hypermock create "I need a user management API with CRUD operations"
```### Direct LLM Mode
Creates a flexible mock API that generates responses dynamically without OpenAPI specs:
```bash
hypermock direct "I need a user management API with CRUD operations"
```3. Access your mock API:
- API endpoints will be available at `http://localhost:3000`
- In OpenAPI mode, documentation will be available at `http://localhost:3000/api-docs`## Options
- `-p, --port `: Specify the port number (default: 3000)
- `-v, --version`: Display version information
- `-h, --help`: Display help information## Examples
```bash
# Create an e-commerce API with OpenAPI specification
hypermock create "Create an e-commerce product catalog API with endpoints for listing products, getting product details, and searching products by category"# Create a flexible todo list API using direct LLM mode
hypermock direct "I need a todo list API with tasks, due dates, and categories" --port 8080
```## Mode Comparison
### OpenAPI Mode (`create`)
- Generates a formal OpenAPI specification
- Provides Swagger UI documentation
- Consistent response schemas
- Better for development and testing against a fixed API contract### Direct LLM Mode (`direct`)
- More flexible and dynamic responses
- No predefined schema constraints
- Adapts to any endpoint path or request structure
- Better for rapid prototyping and exploration## Development
1. Clone the repository
2. Install dependencies:
```bash
npm install
```3. Build the project:
```bash
npm run build
```4. Run in development mode:
```bash
npm run dev
```## License
ISC