The Wayback Machine - https://web.archive.org/web/20201105235012/https://github.com/rjz/codename
Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

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

README.md

Codename generator

Generates codenames. What for, you ask?

Installation

$ npm install -g codename

Usage

From node,

var codename = require('codename')();

var filters = ['alliterative', 'random'],
    lists = ['crayons', 'adjectives', 'cities', 'animals'],
    myName = codename.generate(filters, lists);

Options

codename.generate takes two options: filters and lists.

  • filters (Array[String|Function]) - describes a set of filters that should be used to reduce each list to a single word

  • lists - (Array[String|Array]) - the names or contents of the lists to use for selecting names

From the CLI,

All arguments are forwarded from comma-delimited strings:

$ codename \
  --lists=crayons,adjectives,cities,animals \
  --filters=alliterative,unique,random

Writing Filters

Each filter takes a memo listing any other words selected followed by the list of words the filter should be applied to. For instance, a filter to limit results to words containing the letter j:

var letterJFilter = function (memo, words) {
  return words.filter(function (w) {
    return w.toLowerCase().indexOf('j') > -1;
  });
};

Alternatively, a filter may return a single word that should be added to the name. These filters are output filters, and they should only be used at the end of a filter list.

Filters may be contributed to src/filters or supplied as function arguments to codename.generate.

Word Lists

License

  • word lists (c) their respective authors
  • codename released under the WTFPL
You can’t perform that action at this time.