Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

service-mocker

Package Overview
Dependencies
Maintainers
2
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

service-mocker

The next generation front-end API mocking framework.

  • 2.1.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
108
decreased by-33.33%
Maintainers
2
Weekly downloads
 
Created
Source

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:

<script src="app.js"></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 WoodVincent Bel
Dolphin WoodVincent Bel

License

MIT

Keywords

FAQs

Package last updated on 30 Oct 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc