sasule is a customizable CLI-based key/password generator with hashing and encoding support. Designed for security, development, and automation needs.
- Customizable key length and quantity
- Character set options: letters, numbers, symbols, alphanumeric, or all
- Casing options: lowercase, uppercase, or mixed
- Hashing support:
md5
,sha256
,sha512
- Encoding options:
base64
,base32
- Optional prefix for each key
- Automatic logging with 24-hour cleanup
- Unit tested using Jest
Requires Node.js v18 or later.
git clone https://github.com/nzingx/sasule.git
cd sasule
npm install
Run directly:
node bin/index.js
Or globally (after npm link
):
sasule
Example session:
API Key Generator CLI
Generated at: 2025-06-04 22:00:00
? Password length? 64
? How many API keys to generate? 4
? Character set? alphanumeric
? Character casing? mixed
? Hashing algorithm(s)? [x] sha256 [x] sha512
? Output encoding? base64
? Custom prefix (optional): dev_
#1 API Key: dev_W3kzX9...
sha256: ...
sha512: ...
base64: ZGV2X1cz...
sasule/
├── bin/ # CLI entry point
├── src/
│ └── lib/ # Core modules: generator, hasher, logger
├── test/ # Unit tests
├── .github/ # GitHub Actions workflows
│ └── workflows/
├── coverage/ # Test coverage reports
├── LICENSE
├── package.json
└── jest.config.js
-
jest
– Testing framework -
commitizen
– Conventional commits cz-conventional-changelog
npm test
With coverage:
npm run coverage