Metadata-Version: 2.4
Name: envsync-cli
Version: 0.1.0
Summary: A CLI tool to sync encrypted .env files with GitHub
Author-email: Winner OrluVictor <winnerbrown9@gmail.com>
License: MIT
Requires-Python: >=3.9
Requires-Dist: keyring
Requires-Dist: pyperclip
Requires-Dist: python-age
Requires-Dist: python-dotenv
Requires-Dist: requests
Requires-Dist: rich
Requires-Dist: typer[all]
Description-Content-Type: text/markdown

# envsync

A CLI tool to sync encrypted `.env` files with GitHub securely.

## Features

- **Encryption**: Uses `age` encryption (via `python-age`) to secure your `.env` files.
- **GitHub Integration**: Automatically syncs encrypted files to your repository.
- **Key Management**: Securely stores encryption keys in your system's keychain.
- **Easy Workflow**: Simple `open`, `seal`, and `status` commands to manage your environment.

## Installation

To install `envsync`, clone the repository and install it in editable mode:

```bash
git clone https://github.com/yourusername/envsync.git
cd envsync
pip install -e .
```

## Usage

### Initialize

Initialize `envsync` in your project repository. This will detect your git repo, authenticate with GitHub, generate an encryption key, and store it in your keychain.

```bash
envsync init
```

### Decrypt Environment

Decrypt your `.env.enc` file to a usable `.env` file.

```bash
envsync open
```

### Encrypt Environment

Encrypt your `.env` file to `.env.enc` for safe committing.

```bash
envsync seal
```

### Check Status

View the status of your environment files and sync state.

```bash
envsync status
```

## Development

Run tests using `pytest`:

```bash
pytest
```

## License

MIT
