You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Mark Cornick 382c91a443
Revert "Remove shell.nix and friends"
4 days ago
lib fix(Math): Math.floor instead of parseInt 11 months ago
.editorconfig Add more comprehensive testing 6 years ago
.envrc Revert "Remove shell.nix and friends" 4 days ago
.eslintignore style(tools): Overhaul and upgrade tooling 4 years ago
.gitignore Return to mocha/chai for testing 6 years ago
.prettierignore docs(prettier): Run prettier on Markdown files 3 years ago
.travis.yml chore(travis): test on NodeJS 12 and drop 11 and 8 2 years ago docs: fix usage of old passwoid/passwoid repo 3 years ago docs(COC): Fix Alex warnings in COC 3 years ago docs(CONTRIBUTING): Fix long line 3 years ago
LICENSE Relicense as Apache-2.0 6 years ago Switch from npm to yarn 3 months ago
bin.js style(quotes): Change single quotes to double quotes 3 years ago
package.json fix(audit): Fix `npm audit` findings 1 year ago
shell.nix Switch from npm to yarn 3 months ago
yarn.lock Switch from npm to yarn 3 months ago

Maintenance Mode

passwoid is feature-complete and no longer under active development.


Build Status Build Status Coverage Status Commitizen friendly

A reasonably secure password generator

passwoid generates reasonably secure passwords. That's it; that's all it does.

The passwords generated by passwoid are strings of random characters. Passwords are chosen from the set of all upper-case letters except I and O, all lower-case letters except l, and the digits 2 through 9. 0 and O are not used to avoid confusion with each other when passwords are displayed in sans-serif fonts. I, l, and 1 are not used for the same reason. Passwords are guaranteed to contain at least one upper-case letter, one lower-case letter, and one number.

The default length is 16. The minimum length is 3, because a shorter password would not satisfy the requirement to use all three classes of characters. passwoid will create a password of any length of 3 or greater, and guarantees that passwords will not repeat any characters if the requested length is 57 or less.


# for programmatic usage
yarn add passwoid
# for command-line usage
yarn global add passwoid

Programmatic Usage

var passwoid = require("passwoid");

passwoid(); // returns a password of the default length (16)
passwoid(8); // returns a password of length 8
passwoid(1); // throws Error: Cannot generate password of length 1

Command-Line Usage With Global Install

$ passwoid
$ passwoid 8
$ passwoid 1
    throw new Error('Cannot generate password of length ' + length);
Error: Cannot generate password of length 1


Bug reports and pull requests are welcome on GitHub at This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.


passwoid is available as open source under the terms of the Apache License version 2.0.