Skip to content
Generate Heroku-like random names to use in your node applications.
TypeScript JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows github actions (#112) Oct 14, 2019
src switch to typescript & jest Mar 26, 2019
.babelrc fix missing default export in nodejs pkg Mar 28, 2019
.gitignore switch to typescript & jest Mar 26, 2019
LICENSE switch to typescript & jest Mar 26, 2019
README.md github actions (#112) Oct 14, 2019
jest.config.js switch to typescript & jest Mar 26, 2019
package.json v2.1.2 Dec 1, 2019
tsconfig.json fix tsconfig module resolution Dec 1, 2019
yarn.lock update js deps Dec 1, 2019

README.md

HaikunatorJS

Build Status Latest Version Dependency Status devDependency Status 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 haikunator = new Haikunator({
    adjectives: ['custom', 'adjectives'],
    nouns: ['custom', 'nouns'],
    seed: 'custom-seed',
    defaults: { // class 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
    defaults: { // Class wide defaults, can get overridden by haikunate(options)
        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:

You can’t perform that action at this time.