nhs-number-validator
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/nhs-number-validator package

1.1.1 • Public • Published

NHS number validator (JS)

Build Status

A simple NHS number validator, following the process described in the NHS Data Dictionary.

Installation

NPM
npm install --save nhs-number-validator
Bower
bower install --save nhs-number-validator

Usage

Command line / terminal

To run the interactive validation tool, install the NPM module globally:

npm install -g nhs-number-validator

and nhs-number-validator will be added to your path:

$ nhs-number-validator
Enter NHS numbers to validate, Ctrl-D to exit
> 123
*INVALID
> 2983396339
 VALID

You can also install the tool for a single project, and just reference the executable in your project:

npm install nhs-number-validator
./node_modules/.bin/nhs-number-validator
# or 
`npm bin`/nhs-number-validator
Node/Browserify

For environments supporting require/exports:

var validator = require('nhs-number-validator');
 
validator.validate('2983396339') // => true
validator.validate('test') // => false
Browsers

Any environment which exposes window will have the nhsNumberValidator variable attached when index.js is loaded, e.g.:

<script src="./bower_components/nhs-number-validator/index.js"></script>
<script>
  var validator = window.nhsNumberValidator
  validator.validate('2983396339') // => true
  validator.validate('test') // => false
 
  // or just use it directly if you prefer:
  window.nhsNumberValidator.validate('2983396339') // => true
 
  // you don't even need `window`:
  nhsNumberValidator.validate('2983396339') // => true
</script> 

Contributing

Pull requests, issues, and questions are all welcome.

Some useful commands:

  • npm test: run the test suite.
  • npm run test-watch --silent: watch for changes and run the test suite each time.
  • npm run lint --silent: run the code linter.
  • npm run cli: run the validator CLI.

NPM is overly verbose at the moment, hence the additional --silent to suppress the unnecessary noise.

Creating a release

Making a release is pretty straightforward:

VERSION_NUMBER=1.1.0
 
git checkout master && git pull
git checkout develop && git pull
 
git flow release start $VERSION_NUMBER
 
# Bump the version in package.json now! 
jq ".version = \"${VERSION_NUMBER}\"" package.json > package.json.new && mv package.json.new package.json
jq ".version = \"${VERSION_NUMBER}\"" bower.json > bower.json.new && mv bower.json.new bower.json
git add package.json
git commit -m "Update package version number to $VERSION_NUMBER"
 
# The following command requires user input 
git flow release finish $VERSION_NUMBER
 
git checkout master && git push
git checkout develop && git push
git push --tags
 
git checkout master
hub release create -m "$VERSION_NUMBER" $VERSION_NUMBER
npm publish
# Bower is published automatically using Git tags, so don't worry about that 
git checkout develop

Package Sidebar

Install

npm i nhs-number-validator

Weekly Downloads

1,540

Version

1.1.1

License

MIT

Last publish

Collaborators

  • spikeheap