https://github.com/ntk148v/pwgenie
A simple password generator written in Golang
https://github.com/ntk148v/pwgenie
cli golang golang-library password-generator random-password random-password-generator
Last synced: 3 months ago
JSON representation
A simple password generator written in Golang
- Host: GitHub
- URL: https://github.com/ntk148v/pwgenie
- Owner: ntk148v
- License: apache-2.0
- Created: 2023-05-09T09:42:44.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2025-03-24T12:00:03.000Z (about 1 year ago)
- Last Synced: 2025-04-07T05:42:25.853Z (about 1 year ago)
- Topics: cli, golang, golang-library, password-generator, random-password, random-password-generator
- Language: Go
- Homepage:
- Size: 892 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Table of content:
- [1. Introduction](#1-introduction)
- [2. Installation](#2-installation)
- [3. Usage](#3-usage)
- [4. Contributing](#4-contributing)
## 1. Introduction
PwGenie is a command-line application written in Golang to generate secure passwords.
It's highly inspired by [Motus](https://github.com/oleiade/motus) and [go-password](https://github.com/sethvargo/go-password/).
Features:
- Generate **secure human-friendly memorable passwords** using [EFF's wordlist](https://www.eff.org/deeplinks/2016/07/new-wordlists-random-passphrases).
- Generate **random passwords** with optional (uppercase, number, symbol inclusion), follow the algorithm described in [AgileBits 1Password](https://discussions.agilebits.com/discussion/23842/how-random-are-the-generated-passwords).
- Generate **PINs** with customizable length.
- Enable/disable **repeat**.
- **Clipboard** integration for easy password usage (Default).
## 2. Installation
## 3. Usage
```shell
$ pwgenie
pwgenie is a simple password generator.
Usage
-----
pwgenie [OPTIONS] [SUBCOMMAND-OPTIONS]
Options
-------
-allow-repeat
Allow repeat characters in the generated password
-no-clipboard
Disable automatic copying of generated password to clipboard
Subcommands
-----------
human Generate a human-friendly memorable password
random Generate a random password with specified complexity
pin Generate a random numeric PIN code
Run subcommand with '-h' for subcommand's options.
Example
-------
$ pwgenie human
trade clash striking underdog arbitrate
$ pwgenie human -sep -
preplan-mousiness-joining-eskimo-linguist
$ pwgenie random
bwuelvko
$ pwgenie random -symb -num -upper
_U*HkTzA
```
- Generate a human-friendly memorable password
```shell
$ pwgenie human -h
Generate a human-friendly memorable password
Usage of 'pwgenie human':
-cap
Enable capitalization of each word in the generated password
-sep string
The separator for words in the generated password (default " ")
-words int
The number of words in the generated password (default 5)
$ pwgenie human -sep - -words 10
stray-tableful-equity-stylishly-playmaker-pagan-upturned-gizzard-huntsman-defile
$ pwgenie human -cap
Daredevil Malt Recycler Prior Mutual
```
- Generate a random password
```shell
$ pwgenie random -h
Generate a random password with specified complexity
Usage of 'pwgenie random':
-digit
Enable the inclusion of numbers in the generated password
-length int
The number of characters in the generated password (default 8)
-symbol
Enable the inclusion of symbols in the generated password
-upper
Enable the inclusion of upper-case letters in the generated passwords
$ pwgenie random -digit -symbol -upper
iJdNmD0*
$ pwgenie random -digit -symbol -upper -length 20
LohapCbF_vzyuItDX91Z
```
- Generate a PIN
```shell
$ pwgenie pin -h
Generate a random numeric PIN code
Usage of 'pwgenie pin':
-length int
The number of digits in the generated PIN code (default 6)
$ pwgenie pin
491768
```
## 4. Contributing
We welcome contributions to the project. Feel free to submit issues, suggest new features, or create pull requests to help improve pwgenie.