Need help with service-mocker?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

service-mocker
1.0K Stars 43 Forks MIT License 479 Commits 10 Opened issues

Description

🚀 Next generation frontend API mocking framework

Services available

!
?

Need anything else?

Contributors list

Service Mocker

Travis CI CircleCI Coverage Version License

Build Status

Service Mocker is an API mocking framework for frontend developers. With the power of service workers, we can easily set up mocking services without any real servers. It sets developers free from intricate workflows, complex documentations and endless proxies from server to server.

Q: Is Service Worker ready?

A: No, not yet.

Q: Is Service Mocker ready?

A: Yes! Welcome to the future!

Installation

Since you are likely to run Service Mocker only during development, you will need to add

service-mocker
as a devDependency:
npm install service-mocker --save-dev

For legacy browsers, you may also need the polyfills:

npm install service-mocker-polyfills --save-dev

Features

  • No server is required.
  • Real HTTP requests and responses that can be inspected in modern browsers.
  • express style routing system.
  • IE10+ compatibility.

Hello new world

A typical mocker includes two parts:

client
and
server
. First, let's create a server script named
server.js
:
// server.js
import { createServer } from 'service-mocker/server';

const { router } = createServer();

router.get('/greet', (req, res) => { res.send('Hello new world!'); });

// or you can use the shorthand method router.get('/greet', 'Hello new world!');

Then, we need to write a client script to connect to the server:

// app.js
import 'service-mocker-polyfills';
import { createClient } from 'service-mocker/client';

const client = createClient('path/to/server.js');

client.ready.then(async () => { const response = await fetch('/greet');

console.log(await response.text()); });

After that, create a

.html
file and include ONLY the client script:

Now navigate your browser to your local dev server (e.g.

http://localhost:3000
). Open the console and you will see the following messages:
> [mocker:modern] connection established
>
> Hello new world!

Welcome to the future :clap:.

Working with webpack

While using webpack, it's recommended to use sw-loader to create a standalone server script:

import scriptURL from 'sw-loader!path/to/server.js';
import { createClient } from 'service-mocker/client';

const client = createClient(scriptURL);

client.ready.then(...);

Docs & Demos

Team

Dolphin Wood

Vincent Bel
Dolphin Wood Vincent Bel

License

MIT

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.