Comparison
A hosted json-server alternative (no install, real data)
json-server turned db.json into REST routes and changed how we prototype. But the moment you need that API on a teammate's machine, in CI, or filled with believable data, you start fighting the file. Here is where a hosted mock takes over.
What json-server gets right
- Local and offline — runs on your machine, no account, no network.
- Full control — every record is yours, hand-written in
db.json. - Instant CRUD — GET, POST, PUT, PATCH, DELETE out of the box.
If that covers your need, stay with it. The friction shows up later.
Where a hosted mock wins
- A shareable URL — front, mobile, CI and your reviewer all hit the same endpoint, no
npm install. - Realistic data on tap — names, emails, prices, dates that look real, generated by the hundred. No more
"name": "test test". - Relations that hold — a review points to a real product id, a post to a real author id.
- Nothing to maintain — describe the shape once; you never hand-edit a 2 000-line
db.jsonagain. - Pagination built in —
?page=/?limit=withtotalandtotalPages, no extra flags.
From db.json to a description
With json-server you author the data. With MockSmith you author the *shape*, and the data is forged for you:
{ "resources": [{ "name": "posts", "count": 50, "fields": [ { "name": "id", "type": "uuid" }, { "name": "title", "type": "sentence" }, { "name": "authorId", "type": "ref", "ref": "users.id" } ] }]}That count: 50 is fifty believable posts you never typed — each wired to a real user.
- GET/m/you/blog/posts— paginated list
- GET/m/you/blog/posts/:id
- POST/m/you/blog/posts
- PATCH/m/you/blog/posts/:id
- DELETE/m/you/blog/posts/:id
When to keep json-server
Strict offline work, or data so specific it must be hand-authored. For everything shareable, demo-ready or filled with realistic rows, hosting wins.
Frequently asked
Do created records persist like json-server?
Yes. POST/PUT/PATCH/DELETE mutate stored records and persist between requests, exactly like writing to db.json — but on a shared URL.
Can I lock the API so it isn't fully public?
Add a Bearer key to the project and every endpoint starts requiring Authorization: Bearer. With no key, it stays public — your call.
Is it free?
The free plan covers up to two projects with the visual builder and full CRUD. AI generation from a description is a Pro feature.
Stop waiting on the backend.
Forge your own mock API in two minutes. Free, up to two projects, no credit card.
Forge a free mockRead next
Recipe · Pagination
How to mock a paginated REST API (no backend)
Build a fake REST endpoint with real pagination — page, limit, total and totalPages — and wire an infinite scroll against stable data.
4 minRecipe · Auth
Add Bearer token auth to your mock API
Lock your mock endpoints behind an Authorization: Bearer header — one key flips every route from public to protected, with clean 401s to test against.
4 min