This module is intended to provide some common helper functions for NodeJS web applications leveraging the Connect/Express web servers.
- respondJson() - Add .json(data, responseCode) method to 'res' objects in pipeline.
Simple JSON response extension for outgoing response object which stringifies the specified object, sets the HTTP response code and content type headers:
const fiddleware = require('fiddleware');
app.use(fiddleware.respondJson());
function doSomething(req, res) {
// Return all of the JSONs.
res.json({
foo: 'bar'}, 200);
}
Please note that HTTP status code is defaulted to 200 if the second parameter is not passed.
This repository is MIT licensed. That means you can use it freely without restriction or attribution. If this helped you get started, give the repo a star on GitHub and help spread the word.
The library is built using the following tools and techniques:
- Code Coverage Analysis (Package: istanbul / gulp-istanbul)
- Documentation Generation (Package: esdoc/gulp-esdoc)
- Standards Enforcement (Package: eslint/gulp-eslint
- Special nod to Airbnb for their coding standards ruleset.
- Unit Testing with:
These are all validated and working on NodeJS 4.x and above, we test for multiple variations of node which can be seen in our .travis.yml
To get started for your contributions, please do the following:
- Create a fork of our repository into your own workspace or organisation (this way you can track improvements and updates as we make them).
- If you aren't using VSCode, then you can also drop the .vscode directory, which defines some IDE options to make sure the standards for tabs and spacing are used.
Then it's as simple as:
npm install
gulp
Please note all contributions require test coverage to be accepted.
The following gulp tasks are defined:
- gulp docs - Regenerate esdoc documentation.
- gulp lint - Run ESLint validation of code standards.
- You can also lint-lib or lint-tests to look at specific areas.
- gulp test - Run unit tests.