0.1.1 • Published 10 years ago

namegenerator v0.1.1

Weekly downloads
6
License
BSD-2-Clause
Repository
github
Last release
10 years ago

namegenerator

Build Status Downloads npm version dependencies dev dependencies License

The main purpose of namegenerator generate an ordered list of names based on an alphabet.

For a simple alphabet like 'a', 'b', 'c' the sequence is:

a, b, c, aa, ab, ac, ba, bb, bc, ca, cb, cc, aaa, aab, ...

Getting Started

Install it via npm:

npm install namegenerator --save

And include in your project:

var Namegenerator = require('namegenerator');

var namegenerator = new Namegenerator(['a', 'b', 'c']);

namegenerator.nameForId(0); // a
namegenerator.nameForId(1); // b
namegenerator.nameForId(2); // c
namegenerator.nameForId(3); // aa

var ids = [0, 1, 2, 3, 4];

for (var id of ids) {
  var name = namegenerator.nameForId(id);
  console.log(name);
}

// Output:
// a
// b
// c
// aa
// ab

for (var name of namegenerator) {
  console.log(name);
  if (name === 'bc') {
    break;
  }
}

// Output:
// a
// b
// c
// aa
// ab
// ac
// ba
// bb
// bc

var names = namegenerator.array(0, 5);
console.log(names);

// Output:
// [ 'a', 'b', 'c', 'aa', 'ab', 'ac' ]

for (var name of namegenerator.range(1000, 1005)) {
  console.log(name);
}

// Output:
// cbcbcb
// cbcbcc
// cbccaa
// cbccab
// cbccac

ES6

import Namegenerator from 'namegenerator';

let namegenerator = new Namegenerator(['a', 'b', 'c']);

namegenerator.nameForId(0); // a
namegenerator.nameForId(1); // b
namegenerator.nameForId(2); // c
namegenerator.nameForId(3); // aa

let ids = [0, 1, 2, 3, 4];

for (let id of ids) {
  let name = namegenerator.nameForId(id);
  console.log(name);
}

// Output:
// a
// b
// c
// aa
// ab

for (let name of namegenerator) {
  console.log(name);
  if (name === 'bc') {
    break;
  }
}

// Output:
// a
// b
// c
// aa
// ab
// ac
// ba
// bb
// bc

var names = namegenerator.array(0, 5);
console.log(names);

// Output:
// [ 'a', 'b', 'c', 'aa', 'ab', 'ac' ]

for (let name of namegenerator.range(1000, 1005)) {
  console.log(name);
}

// Output:
// cbcbcb
// cbcbcc
// cbccaa
// cbccab
// cbccac

FAQ

What is the default alphabet.

The default alphabet is based on the allowed characters for a Twitter account. 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '_', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'

License

BSD-2-Clause

0.1.1

10 years ago

0.1.0

10 years ago