-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
24 lines (21 loc) · 939 Bytes
/
index.js
File metadata and controls
24 lines (21 loc) · 939 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env node
const chalk = require("chalk");
const program = require("commander");
const createPassword = require("./utils/createPassword");
const savePassword = require("./utils/savePassword");
const log = console.log;
const clipBoardy = require("clipboardy");
program.version("1.0.0").description("Simple Password Generator");
program.option("-l, --length <number>", "length of password", "8");
program.option("-s, --save", "Save password to passwords.txt");
program.option("-nn, --no-numbers", "Remove numbers");
program.option("-ns, --no-symbols", "Remove symbols");
program.parse();
const { length, save, numbers, symbols } = program.opts();
const generatedPassword = createPassword(length, numbers, symbols);
if (save) {
savePassword(generatedPassword);
}
clipBoardy.writeSync(generatedPassword);
log(chalk.blue("Generated password: ") + chalk.bold(generatedPassword));
log(chalk.yellow("Password copied to clipboard"));