Metadata-Version: 2.4
Name: pypasswizard
Version: 0.3.2
Summary: A CLI application for managing passwords securely.
Home-page: https://github.com/0Mr-Panda0/PyPassWizard
Author: 0Mr-Panda0
Author-email: karan.behera366@gmail.com
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click>=8.1.8
Requires-Dist: fastparquet>=2024.11.0
Requires-Dist: funkybob>=2023.12.0
Requires-Dist: mypy>=1.15.0
Requires-Dist: openpyxl>=3.1.5
Requires-Dist: pandas>=2.2.3
Requires-Dist: pandera>=0.23.1
Requires-Dist: pyarrow>=20.0.0
Requires-Dist: pytest>=8.3.5
Requires-Dist: pytest-cov>=6.1.1
Requires-Dist: python-dotenv>=1.1.0
Requires-Dist: ruff>=0.11.7
Requires-Dist: setuptools>=80.0.0
Requires-Dist: tabulate>=0.9.0
Requires-Dist: toml>=0.10.2
Requires-Dist: twine>=6.1.0
Dynamic: author
Dynamic: author-email
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-python

# PyPassWizard

Welcome to **PyPassWizard**!

This is a command-line application designed to generate and securely store passwords. It is lightweight, easy to use, and perfect for managing your passwords directly from the terminal.

## Features

- Generate strong, random passwords of customizable length.
- Store passwords securely in an encrypted database.
- Retrieve stored passwords by name or tag.
- Delete passwords securely.
- User-friendly CLI interface with clear commands and options.

## Installation

To set up the project locally, follow these steps:

1. Clone the repository:

    ```bash
    git clone https://github.com/0Mr-Panda0/PyPassWizard.git
    ```

2. Navigate to the project directory:

    ```bash
    cd PyPassWizard
    ```

3. Install the required dependencies:

    ```bash
    uv sync
    ```

4. Download the application from pip or uv:

    ```bash
    pip install pypasswizard
    ```

    or

    ```bash
    uv add pypasswizard
    ```

5. Run the application:

    ```bash
    pypasswizard --version
    ```

## Usage

Here are some examples of how to use PyPassWizard:

### Generate a Password

Generate a random password with a specified length:

```bash
pypasswizard generate -l 13 -c yes -i yes -d yes -s no
```

### Store a Password

Store a password with a name for easy retrieval:

```bash
pypasswizard store --name "GitHub" --password "mySecurePassword123!"
```

### Retrieve a Password

Retrieve a stored password by its name:

```bash
pypasswizard retrieve --name "GitHub"
```

### Delete a Password

Delete a stored password securely:

```bash
pypasswizard delete --name "GitHub"
```

### Export Passwords

Export stored passwords:

```bash
pypasswizard export --name "output" --format xlsx --location passwords
```

Note: Current supported formats csv, xlsx, parquet, json, md

### View Help

View all available commands and options:

```bash
pypasswizard --help
```

## Contributing

Contributions are welcome! To contribute:

1. Fork the repository.
2. Create a new branch (`git checkout -b feature-branch`).
3. Make your changes.
4. Commit your changes (`git commit -m 'Add new feature'`).
5. Push to the branch (`git push origin feature-branch`).
6. Create a pull request.

## Roadmap

Here are some planned features for future releases:

- Password strength checker.
- Add Auto-Completion.
- Multi-language support for CLI messages.
- Integration with cloud storage for password backups.

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Contact

For any questions or suggestions, please open an issue or contact me at [Karan Behera](mailto:karan.behera366@gmail.com).

## Acknowledgements

1. [uv](https://github.com/astral-sh/uv)
2. [ruff](https://github.com/astral-sh/ruff)
3. [mypy](https://github.com/python/mypy)

Thank you for using PyPassWizard!

[![CI Pipeline](https://github.com/0Mr-Panda0/PyPassWizard/actions/workflows/main.yml/badge.svg)](https://github.com/0Mr-Panda0/PyPassWizard/actions/workflows/main.yml)
