luhn-generator

A generator of numbers that passes the validation of Luhn algorithm or Luhn formula, also known as the 'modulus 10' or 'mod 10' algorithm

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
luhn-generator
980.6.04 years ago7 years agoMinified + gzip package size for luhn-generator in KB

Readme

Luhn Generator
A generator of numbers that passes the validation of Luhn algorithm or Luhn formula, also known as the "modulus 10" or "mod 10" algorithm
npm install luhn-generator --save

Usage

  • ECMAScript Harmony
```js
import luhn from '../dist/luhn';
luhn.generate(1, { pad: 12 }); // 000000000018
```
  • CommonJS
```js
$ node
> const luhn = require('../dist/luhn');
> luhn.generate(1, { pad: 12 }); // 000000000018
```
  • AMD
```html
<!-- amd.html -->
<html>
  <body>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.5/require.min.js"></script>
    <script>
      window.requirejs(['dist/luhn.min'], function(luhn) {
        console.log(luhn.generate(1, { pad: 12 })); // 000000000018
      });
    </script>
  </body>
</html>
```
  • Script Tag
```html
<!-- script-tag.html -->
<html>
  <body>
    <script src="./dist/luhn.min.js"></script>
    <script>
      console.log(luhn.generate(1, { pad: 12 })); // 000000000018
    </script>
  </body>
</html>
```
Generate Luhn "check digit" for number 1:
luhn.checksum(1); // 8
luhn.checksum(12); // 5

Generate number that will pass Luhn algorithm validation:
luhn.generate(1); // 18
luhn.generate(12); // 125
luhn.generate(1, { pad: 5 }); // 00018

Generate random number that will pass Luhn algorithm validation:
luhn.random(12); // 6436204626980
luhn.random(50); // 54833184596638864915195736286128781213916608803535
luhn.random(12, { pad: 50 }); // 00000000000000000000000000000000000004591785326079

Validate number with Luhn algorithm:
luhn.validate(1); // false
luhn.validate(18); // true
luhn.validate(125); // true

To Do

  • Add page with examples
  • Add card number generation