HAL stands for Hypermedia Application Language. It proposes a media type for representing resources and their relations with hyperlinks.
This JS implementation is for the
HAL-JSON variant, having the media type
HAL-JSON is currently at its 5th revision as an Internet Draft at the IETF, and can be read here.
HALbert compliance with HAL
_links_is still optional to a Resource, but if present, it MUST contain a
- Validation of templated URIs has not been implemented.
Install it via NPM:
npm install halbert
Then in your code
var parser = require('halbert').parser;
You can build
halbert by using browserify.
%ROOT_PATH%/node_modules/browserify/bin/cmd.js index.js --standalone halbert
The generated file will be UMD-compatible, which means:
- If you use it in an AMD application, HALbert will be available by doing
- Otherwise, it will be available as
var resource = parser(json_object)
If for any reason, the
json_object does not describe a valid HAL Resource, an Error will be thrown.
- Add examples for various situations (Node.js, Express, Ember, Angular, Backbone...)
- Extend the scope to make it a writer of HAL Resources as well as a parser.
- Better code documentation
MIT, see LICENSE.md