@lxgicstudios/mockapi
v1.0.1
Published
Spin up a mock REST API server from JSON files in seconds. Zero-config CLI tool.
Downloads
123
Maintainers
Readme
@lxgicstudios/mockapi
Spin up a mock REST API server from JSON files in seconds.
No config needed. Just run it.
Installation
# Use directly with npx (recommended)
npx @lxgicstudios/mockapi db.json
# Or install globally
npm install -g @lxgicstudios/mockapiQuick Start
# Create example db.json
npx @lxgicstudios/mockapi --init
# Start the server
npx @lxgicstudios/mockapi db.jsonUsage
# Basic usage
npx @lxgicstudios/mockapi data.json
# Custom port
npx @lxgicstudios/mockapi db.json -p 8080
# Watch for changes
npx @lxgicstudios/mockapi db.json --watch
# Read-only mode
npx @lxgicstudios/mockapi db.json --readonly
# Simulate latency
npx @lxgicstudios/mockapi db.json --delay 500Data File Format
{
"users": [
{ "id": 1, "name": "Alice", "email": "[email protected]" },
{ "id": 2, "name": "Bob", "email": "[email protected]" }
],
"posts": [
{ "id": 1, "title": "Hello", "body": "Content", "userId": 1 }
]
}Generated Routes
For each resource (e.g., users), you get:
| Method | Route | Description |
|--------|-------|-------------|
| GET | /users | List all users |
| GET | /users/:id | Get user by id |
| POST | /users | Create user |
| PUT | /users/:id | Replace user |
| PATCH | /users/:id | Update user |
| DELETE | /users/:id | Delete user |
Query Parameters
# Filter
GET /users?name=Alice
# Pagination
GET /users?_page=1&_limit=10
# Sorting
GET /users?_sort=name&_order=ascOptions
| Option | Description |
|--------|-------------|
| -p, --port <number> | Port (default: 3001) |
| -d, --delay <ms> | Response delay |
| -w, --watch | Watch file for changes |
| -r, --readonly | Disable mutations |
| --no-cors | Disable CORS |
| --init | Create example db.json |
Features
- ✅ Full CRUD operations
- ✅ Automatic ID generation
- ✅ Filtering and pagination
- ✅ Sorting
- ✅ CORS enabled by default
- ✅ Hot reload with
--watch - ✅ Zero config
- ✅ Persistent changes to JSON file
Programmatic API
import { createMockServer } from '@lxgicstudios/mockapi';
const server = createMockServer('db.json', {
port: 3001,
delay: 100,
cors: true,
watch: true,
readonly: false
});
server.listen();
// Later...
server.close();Built by LXGIC Studios
