Push first version
This commit is contained in:
121
README.md
Normal file
121
README.md
Normal file
@@ -0,0 +1,121 @@
|
||||
# GenPass
|
||||
|
||||
**Secure password generator CLI** written in Python.
|
||||
Generate strong, random passwords from the command line with customizable character sets.
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
- Specify password length and quantity
|
||||
- Include/exclude:
|
||||
- Lowercase letters (`--lower`)
|
||||
- Uppercase letters (`--upper`)
|
||||
- Digits (`--digits`)
|
||||
- Symbols (`--symbols`)
|
||||
- Optional custom symbol set (`--symbol-set`)
|
||||
- Ensure at least one character from each selected type (can be disabled with `--no-ensure`)
|
||||
- Shell completions for **bash**, **zsh**, and **fish**
|
||||
- Easy installation via **pipx** or local script
|
||||
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
### 1. Via pipx (recommended)
|
||||
```bash
|
||||
pipx install git+https://github.com/yourusername/genpass
|
||||
````
|
||||
|
||||
### 2. Local installation
|
||||
|
||||
Clone the repo and run the install script:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/yourusername/genpass.git
|
||||
cd genpass
|
||||
./install.sh
|
||||
```
|
||||
|
||||
This will also set up shell completions for bash, zsh, and fish.
|
||||
|
||||
---
|
||||
|
||||
## Usage
|
||||
|
||||
Generate a single password (default 16 characters):
|
||||
|
||||
```bash
|
||||
genpass --lower --upper --digits --symbols
|
||||
```
|
||||
|
||||
Generate 5 passwords of length 20:
|
||||
|
||||
```bash
|
||||
genpass -l 20 -n 5 --lower --upper --digits --symbols
|
||||
```
|
||||
|
||||
Use a custom symbol set:
|
||||
|
||||
```bash
|
||||
genpass --symbols --symbol-set "!@#%&"
|
||||
```
|
||||
|
||||
Disable "ensure each type" rule:
|
||||
|
||||
```bash
|
||||
genpass --lower --upper --digits --no-ensure
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Shell Completion
|
||||
|
||||
After installation, completions are automatically copied to your shell folders.
|
||||
Restart your shell or source the completion files manually:
|
||||
|
||||
**Bash**
|
||||
|
||||
```bash
|
||||
source ~/.local/share/bash-completion/completions/genpass
|
||||
```
|
||||
|
||||
**Zsh**
|
||||
|
||||
```bash
|
||||
source ~/.local/share/zsh/site-functions/_genpass
|
||||
```
|
||||
|
||||
**Fish**
|
||||
|
||||
```fish
|
||||
source ~/.local/share/fish/vendor_completions.d/genpass.fish
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Development
|
||||
|
||||
1. Install in editable mode for development:
|
||||
|
||||
```bash
|
||||
pipx install --editable .
|
||||
```
|
||||
|
||||
2. Make changes in `genpass/cli.py` and test immediately.
|
||||
|
||||
---
|
||||
|
||||
## Contributing
|
||||
|
||||
Contributions are welcome! Please fork the repo and submit pull requests.
|
||||
Ensure code follows PEP8 style and add shell completion tests if applicable.
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the **MIT License** – see the [LICENSE](LICENSE) file for details.
|
||||
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user