Skip to content

Atrox/haikunatorjs

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 

HaikunatorJS

Build Status Latest Version Coverage Status

Generate Heroku-like random names to use in your node applications.

Installation

npm install --save haikunator

Usage

Haikunator is pretty simple.

var Haikunator = require('haikunator')
// ES6: import Haikunator from 'haikunator'

// Instantiate Haikunator without options
var haikunator = new Haikunator()

// Instantiate Haikunator with default options
var customHaikunator = new Haikunator({
  adjectives: ['custom', 'adjectives'],
  nouns: ['custom', 'nouns'],
  seed: 'custom-seed',

  // class defaults
  defaults: {
    tokenLength: 8,
    tokenChars: 'HAIKUNATOR',
    // ...
  },
})

// default usage
haikunator.haikunate() // => "wispy-dust-1337"

// custom length (default=4)
haikunator.haikunate({ tokenLength: 6 }) // => "patient-king-887265"

// use hex instead of numbers
haikunator.haikunate({ tokenHex: true }) // => "purple-breeze-98e1"

// use custom chars instead of numbers/hex
haikunator.haikunate({ tokenChars: 'HAIKUNATE' }) // => "summer-atom-IHEA"

// don't include a token
haikunator.haikunate({ tokenLength: 0 }) // => "cold-wildflower"

// use a different delimiter
haikunator.haikunate({ delimiter: '.' }) // => "restless.sea.7976"

// no token, space delimiter
haikunator.haikunate({ tokenLength: 0, delimiter: ' ' }) // => "delicate haze"

// no token, empty delimiter
haikunator.haikunate({ tokenLength: 0, delimiter: '' }) // => "billowingleaf"

Options

The following options are available:

var Haikunator = require('haikunator')

var haikunator = new Haikunator({
  adjectives: ['custom', 'adjectives'],
  nouns: ['custom', 'nouns'],
  seed: 'custom-seed', // Custom seed

  // Class wide defaults, can get overridden by haikunate(options)
  defaults: {
    delimiter: '-',
    tokenLength: 4,
    tokenHex: false,
    tokenChars: '0123456789',
  },
})

// Same options are also available on the haikunate method
haikunator.haikunate({
  delimiter: '-',
  tokenLength: 4,
  tokenHex: false,
  tokenChars: '0123456789',
})

If tokenHex is true, any tokens specified in tokenChars are ignored

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

Other Languages

Haikunator is also available in other languages. Check them out: