Generate quirky names like fluffy-basin, eminent chickens, hissing-popcorn-3056 to use wherever you need a random but memorable name.
Useful for object names, temp folders, passwords, project names, unique ids etc
yarn add project-name-generator --dev
import generator from 'Generator'
generator.generate().dashed // 'furry-detail'
generator.generate().spaced // 'typical achiever'
generator.generate().raw // ['abusive', 'beds']
generator.generate({ number: true }).dashed // 'waiting-chalk-4875'
generator.generate({ words: 4, number: true }).dashed // 'abandoned-disastrous-thinkable-quilt-4355'
The module returns a single method generator.generate(options)
Calling generator.generate()
with no arguments will return and object:
{
raw: ['noxious', 'tongue'],
dashed: 'noxious-tongue',
spaced: 'noxious tongue'
}
The options
argument can have properties
- words (number) - Number of words generated (excluding number). All words will be ajectives except the last one which will be a noun. Defaults to 2.
- number (boolean) - Whether a numeric suffix is generated or not. The number is between 1 - 9999, both inclusive. Defaults to false.
generator.generate({ words: 3 })
will return:
{
raw: ['purring', 'snowy', 'thrill'],
dashed: 'purring-snowy-thrill'
spaced: 'purring snowy thrill'
}
generator.generate({ words: 5, number: true })
will return:
{
raw: ['kindly', 'skillful', 'furry', 'awful', 'expansion', '8244'],
dashed: 'kindly-skillful-furry-awful-expansion-8244',
spaced: 'kindly skillful furry awful expansion 8244'
}
To run tests locally:
yarn install
yarn test