{"_rev":"3-9116efbac9111942e5f90ee4ad7cd3ba","time":{"created":"2026-04-20T19:19:52.335Z","modified":"2026-04-20T19:19:52.773Z","1.0.0":"2026-04-20T18:47:58.320Z","1.0.2":"2026-04-20T19:19:52.549Z"},"_id":"@asimawdah/passgen","name":"@asimawdah/passgen","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.2":{"name":"@asimawdah/passgen","version":"1.0.2","description":"Secure password generator CLI","main":"index.js","bin":{"passgen":"index.js"},"type":"module","preferGlobal":true,"keywords":["password","cli","generator","security","passgen","password-generator"],"author":{"name":"asimawdah"},"license":"MIT","engines":{"node":">=18"},"scripts":{"test":"node test.js"},"repository":{"type":"git","url":"git+https://github.com/asimawdah/passgen.git"},"bugs":{"url":"https://github.com/asimawdah/passgen/issues"},"homepage":"https://github.com/asimawdah/passgen#readme","publishConfig":{"access":"public"},"dependencies":{"chalk":"^5.6.2","yargs":"^18.0.0"},"gitHead":"627d8ec1f28a506ffb972dde28bff113cbfc8dce","_id":"@asimawdah/passgen@1.0.2","_nodeVersion":"25.8.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-JLWC/j22P0qSt1XtBXGIMjiaBefuPWsYFiWW0Rmo48gSeyWqFapt32mZN5lo5bWsckFCXzH1G8ZL3z352ulRHw==","shasum":"753583ae3aac3e604840972d83f23b5df596136a","tarball":"https://registry.npmjs.org/@asimawdah/passgen/-/passgen-1.0.2.tgz","fileCount":4,"unpackedSize":9400,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCF2sn3nE6cHeysUYfTs4qX7beob6+sqhEFhoa6DU91xgIgEoNmtglXVuRXcFo0cE/fQ5J9H6gpJSOg7mLXDxgDY5M="}]},"_npmUser":{"name":"asimawdah","email":"asimawdah.developer@gmail.com"},"directories":{},"maintainers":[{"name":"asimawdah","email":"asimawdah.developer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/passgen_1.0.2_1776712792422_0.652879076839983"},"_hasShrinkwrap":false}},"maintainers":[{"name":"asimawdah","email":"asimawdah.developer@gmail.com"}],"description":"Secure password generator CLI","homepage":"https://github.com/asimawdah/passgen#readme","keywords":["password","cli","generator","security","passgen","password-generator"],"repository":{"type":"git","url":"git+https://github.com/asimawdah/passgen.git"},"author":{"name":"asimawdah"},"bugs":{"url":"https://github.com/asimawdah/passgen/issues"},"license":"MIT","readme":"[![npm version](https://img.shields.io/npm/v/passgen.svg)](https://www.npmjs.com/package/passgen) [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Node.js](https://img.shields.io/badge/node-%3E%3D18-brightgreen.svg)](https://nodejs.org/)\r\n\r\n# passgen\r\n\r\n> Secure, minimal, and fast command-line password generator for professionals.\r\n\r\npassgen is a compact Node.js CLI that produces cryptographically secure passwords using the Node `crypto` API. It provides sensible presets (weak, medium, strong, ultra) and fine-grained flags for including/excluding uppercase, lowercase, numbers, and symbols.\r\n\r\n## Highlights\r\n\r\n- Uses Node's built-in `crypto.randomInt` for secure randomness\r\n- Preset strength modes (weak, medium, strong, ultra)\r\n- CLI-friendly flags and positional preset (e.g. `passgen ultra`)\r\n- Small single-file implementation for easy auditing and embedding\r\n\r\n## Installation\r\n\r\nInstall globally from npm:\r\n\r\n```bash\r\nnpm install -g @asimawdah/passgen\r\n```\r\n\r\nOr run without installing using `npx`:\r\n\r\n```bash\r\nnpx @asimawdah/passgen ultra\r\n```\r\n\r\nTo install from the repository directory (local testing):\r\n\r\n```bash\r\nnpm install -g .\r\n```\r\n\r\n## Usage\r\n\r\nBasic usage with preset:\r\n\r\n```bash\r\npassgen\r\n```\r\n\r\nResult: `Y@XE4+mNi1dh`\r\n\r\n\r\nUsing flags:\r\n\r\n```bash\r\npassgen --mode strong\r\npassgen -l 20 -u true -lc true -n true -s false\r\n```\r\n\r\n### Flags\r\n\r\n- `-l`, `--length` (number): Password length (default: 12)\r\n- `-u`, `--upper` (boolean): Include uppercase letters\r\n- `-lc`, `--lower` (boolean): Include lowercase letters\r\n- `-n`, `--numbers` (boolean): Include digits\r\n- `-s`, `--symbols` (boolean): Include symbols\r\n- `--mode` (string): Preset mode — `weak | medium | strong | ultra`\r\n- `-i`, `--info` (boolean): Show password strength and entropy info\r\n\r\n## Examples\r\n\r\n```bash\r\n# Generate an ultra password (32 chars)\r\npassgen ultra\r\n\r\n# Strong preset\r\npassgen --mode strong\r\n\r\n# Custom length without symbols\r\npassgen -l 16 -s false\r\n```\r\n\r\n## Security notes\r\n\r\n- passgen relies on Node's `crypto` for random number generation; do not use non-cryptographic RNGs for password generation.\r\n- Avoid piping passwords through logs or unencrypted channels.\r\n\r\n## Contributing\r\n\r\nContributions and issues are welcome. Please open an issue or submit a pull request following standard Node.js project conventions. Run the test suite locally using:\r\n\r\n```bash\r\nnpm test\r\n```\r\n\r\n## License\r\n\r\nMIT — see the `LICENSE` file.\r\n","readmeFilename":"README.md"}