This is an npm library to detect some browser or device details of the user such as Timezone, screen sizes, browser configuration etc. Such details are often required to be sent by software providers to the tax authority in their country to prevent fraud.
Eg: The Tax Authority in the UK (HMRC) requires software providers using some of their APIs to provide consistent headers known as Fraud Prevention headers. This node module collects such information for you in the format required.
Each top level folder in
src/js has its own README with more specific information around the use case. E.g. HMRC README
How to use
Usage instructions can be found here
How to test
Instructions for testing the changes can be found here
We do not allow contributors to claim issues. If you find something interesting you can contribute to the repo, feel free to raise a PR. We do not require you to let us know in advance.
- Fork the repo
- Install dependencies locally by running
- Make your changes
- Make sure it builds using
npm run build
- Run the tests (you added tests, right?) with
- Test your changes in your consuming code or using our demo project: Run
- Ensure the code coverage is the same or higher than before your changes
- Ensure commit message is properly formatted:
type(subject): input. Eg:
chore(prettier): update prettier to 2.x
- Create a PR to the
- Codeowners will automatically be requested to review, so no need to tag on your PR
Expected Project Structure
The structure shown here is how your code should be organised in the repository
implementation folder should be renamed according to the problem you are solving for eg. the code for HMRC in UK is in the folder named hmrc.
Project └──src └──js └──common // Common and non specific code shoud be put in this folder └──implementation // Implementation specific code for solving problem should be in this folder
How contributors get added to the README
There are two ways to add yourself as a contributor to this repo:
- Call @all-contributors bot by adding this following comment in a PR: @all-contributors please add [username] for [contributions]. Please refer to the docs for more info.
- Use the all-contributors-cli by running
npx all-contributors add [username] [contributions]. Please refer to the docs for more info.
All parameters are required. See the Emoji Key (Contribution Types Reference) for a list of valid contribution types.
Please see our CHANGELOG
README in other languages: