ghosttrain

Client-side router in the spirit of Express, for mock data, development and demos.

GhostTrain

Mock router library for serving mock data statically. http://ghosttrainjs.com

GhostTrain is a mock router library for serving mock data statically. Leveraging the same API as Express, GhostTrain allows developers to send mock requests to GhostTrain rather than making HTTP requests to a server, for development, testing and demos. Run in a browser, in node, and take development to the next level.

Set up a ghosttrain instance

var ghosttrain = new GhostTrain();

Set up routes

var users = {
  '1': {
    name: 'Ozzie Isaacs',
    skills: ['Planet Riding']
  }
}
 
ghosttrain.get('/users/:id', function (reqres) {
  res.request(200, users[req.parms.id]);
});
ghosttrain.request('GET', '/users/12345', function (errresbody) {
  console.log(body);
  // { name: 'Ozzie Isaacs', skills: ['Planet Riding'] } 
  console.log(res.statusCode);
  // 200 
});

Documentation can be found at ghosttrainjs.com.

GhostTrain has been tested on latest versions of Firefox, Chrome, Safari, Opera, and IE8+. For IE8 support, several polyfills and APIs must be implemented; you can use the ./dist/ghosttrain-legacy.js build which contains all these polyfills, or implement them on your own. The methods needed are:

  • Array.prototype.indexOf
  • Array.prototype.map
  • Array.prototype.forEach
  • Array.isArray
  • String.prototype.trim
  • Object.keys
  • JSON.parse
  • JSON.stringify

In a Browserify environment you can also pull in the legacy support files via require('ghosttrain/legacy').

MIT License