Skip to content

A generator of numbers that passes the validation of Luhn algorithm

License

Notifications You must be signed in to change notification settings

rromanovsky/luhn-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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
    import luhn from '../dist/luhn';
    luhn.generate(1, { pad: 12 }); // 000000000018
  • CommonJS
    $ node
    > const luhn = require('../dist/luhn');
    > luhn.generate(1, { pad: 12 }); // 000000000018
  • AMD
    <!-- 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
    <!-- 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

About

A generator of numbers that passes the validation of Luhn algorithm

Resources

License

Stars

Watchers

Forks

Packages

No packages published