creds-vault


Namecreds-vault JSON
Version 1.0.1 PyPI version JSON
download
home_pageNone
SummarySecure environment variable synchronization tool
upload_time2025-08-26 15:37:02
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseMIT
keywords secrets-cli environment dotenv encryption cli github gist security devops
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Creds Vault πŸ”

[![PyPI version](https://badge.fury.io/py/creds-vault.svg)](https://badge.fury.io/py/creds-vault)
[![Python Support](https://img.shields.io/pypi/pyversions/creds-vault.svg)](https://pypi.org/project/creds-vault/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

A secure command-line utility for sharing `.env` files across development teams using GitHub Gists with client-side AES-256 encryption.

## πŸš€ Features

- **πŸ”’ Client-side Encryption**: AES-256 encryption with PBKDF2 key derivation
- **πŸ†“ Free Storage**: Uses GitHub Gists (no additional service costs)
- **πŸ‘₯ Team-friendly**: Simple sharing via gist IDs
- **πŸ›‘οΈ Zero-knowledge**: GitHub never sees your plaintext secrets
- **πŸ“ Project-aware**: Remembers vault configuration per project
- **πŸ” Secure by Default**: Restricted file permissions (600)

## πŸ›‘οΈ Security Architecture

```
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    AES-256     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    HTTPS    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Local .env    β”‚ ──────────────▢│  Encrypted Blob  β”‚ ───────────▢│ GitHub Gist β”‚
β”‚   (plaintext)   β”‚   Client-side  β”‚   (ciphertext)   β”‚             β”‚  (private)  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜             β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
```

- **Your secrets never leave your machine in plaintext**
- **Password-based encryption** with 100,000 PBKDF2 iterations
- **Salt-based security** prevents rainbow table attacks
- **Private GitHub Gists** for encrypted storage

## πŸ“¦ Installation

### Option 1: Install from PyPI (Recommended)
```bash
pip install creds-vault
```

### Option 2: Install from Source
```bash
git clone https://github.com/mirzamudassir/creds-vault.git
cd creds-vault
make install
```

### Option 3: Development Installation
```bash
git clone https://github.com/mirzamudassir/creds-vault.git
cd creds-vault
make install-dev
```

## βš™οΈ Setup

### 1. GitHub Token Setup
Create a GitHub personal access token with `gist` scope:

1. Go to [GitHub Settings β†’ Tokens](https://github.com/settings/tokens)
2. Click "Generate new token (classic)"
3. Select **only** the `gist` scope
4. Copy the token

```bash
# Set environment variable
export GITHUB_TOKEN="ghp_your_token_here"

# Make it permanent
echo 'export GITHUB_TOKEN="ghp_your_token_here"' >> ~/.bashrc
source ~/.bashrc
```

### 2. Verify Installation
```bash
secrets --version
secrets --help
```

## πŸ”„ Usage

### First-time Setup (Project Owner)

```bash
# Navigate to your project
cd my-awesome-project

# Create or edit your .env file
cat > .env << EOF
DATABASE_URL=postgresql://localhost:5432/myapp
API_KEY=sk-1234567890abcdef
STRIPE_SECRET=sk_test_xyz123
JWT_SECRET=super-secret-jwt-key
EOF

# Initialize encrypted vault
secrets init

# Output:
# βœ… Successfully initialized encrypted secrets vault
# πŸ”’ Content encrypted with AES-256
# πŸ“ Gist ID: xxxxxx
# 
# πŸ“€ Share this command with your team:
#    secrets pull --gist-id xxxxxx
# 
# ⚠️  Important: Share the vault password securely!
```

### Team Member Setup

```bash
# Navigate to project directory
cd my-awesome-project

# Pull secrets (replace with actual gist ID)
secrets pull --gist-id xxxxxx
# Enter vault password: β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’

# βœ… Successfully pulled and decrypted .env
# πŸ“ Saved project configuration
```

### Daily Workflow

```bash
# Check project status
secrets status

# Pull latest changes
secrets pull

# Make local changes to .env
echo "NEW_FEATURE_FLAG=true" >> .env

# Push changes to vault
secrets push

# Check what's configured
secrets status
```

## πŸ“‹ Command Reference

### `secrets init`
Initialize encrypted vault with current `.env` file.

```bash
secrets init [--filename .env.local]
```

**Options:**
- `--filename`: Specify custom env file name (default: `.env`)

### `secrets push`
Push local env file to vault.

```bash
secrets push [--filename .env.local]
```

**Options:**
- `--filename`: Specify custom env file name (default: `.env`)

### `secrets pull`
Pull env file from vault.

```bash
secrets pull [--gist-id ID] [--filename .env] [--force]
```

**Options:**
- `--gist-id`: Gist ID (required for first-time setup)
- `--filename`: Custom filename (default: auto-detect)
- `--force`: Overwrite without confirmation

### `secrets status`
Show project status and configuration.

```bash
secrets status
```

## πŸ—οΈ Project Structure

After installation, your project will have:

```
your-project/
β”œβ”€β”€ .env                     # Your secrets file
β”œβ”€β”€ .gitignore              # Should include .env
└── (other project files)

~/.creds-vault/
└── config.json             # Project β†’ gist mappings
```

## πŸ”’ Security Best Practices

### Password Security
- **Use strong passwords**: Minimum 12 characters with mixed case, numbers, symbols
- **Unique passwords**: Don't reuse passwords from other services
- **Secure sharing**: Use password managers or secure channels to share vault passwords
- **Regular rotation**: Consider rotating vault passwords periodically

### GitHub Token Security
- **Minimal permissions**: Only grant `gist` scope
- **Regular rotation**: Rotate tokens every 3-6 months
- **Secure storage**: Never commit tokens to code repositories
- **Team vs individual**: Consider using team-specific tokens for organizations

### File Security
- **Gitignore**: Always add `.env*` to your `.gitignore`
- **Permissions**: Tool automatically sets secure permissions (600)
- **Cleanup**: Remove `.env` files when no longer needed

## 🚨 Security Considerations

### βœ… What's Protected
- **Plaintext secrets**: Never transmitted or stored in the cloud
- **Man-in-the-middle**: HTTPS protects data in transit
- **GitHub breaches**: Encrypted data remains secure
- **Token compromise**: Attackers only see encrypted blobs

### ⚠️ Limitations
- **Password security**: Vault security depends on password strength
- **Local compromise**: If your machine is compromised, local files are at risk
- **Social engineering**: Sharing passwords insecurely can compromise vaults
- **GitHub availability**: Service depends on GitHub being accessible

### 🏒 Compliance
- **Development environments**: Suitable for dev/staging secrets
- **Production secrets**: Consider dedicated secret management for production
- **Audit requirements**: Tool doesn't provide audit logs (GitHub does)
- **Regulatory compliance**: Evaluate against your specific requirements

## πŸ› οΈ Development

### Setup Development Environment
```bash
git clone https://github.com/mirzamudassir/creds-vault.git
cd creds-vault
make install-dev
```

### Run Tests
```bash
make test
```

### Code Quality
```bash
make lint          # Run linting
make format        # Format code
make check         # Lint + test
```

### Build and Release
```bash
make build         # Build distribution
make publish       # Publish to PyPI
```

## πŸ”§ Advanced Usage

### Custom Filenames
```bash
# Initialize with custom filename
secrets init --filename .env.production

# Push/pull custom files
secrets push --filename .env.local
secrets pull --filename .env.staging
```

### Multiple Projects
The tool automatically manages different vaults per project:

```bash
cd project-a
secrets init        # Creates vault A

cd ../project-b  
secrets init        # Creates vault B

secrets status      # Shows project B config
cd ../project-a
secrets status      # Shows project A config
```

### CI/CD Integration
```bash
# In CI/CD pipeline
export GITHUB_TOKEN="${{ secrets.GITHUB_TOKEN }}"
secrets pull --gist-id $VAULT_ID --force
```

## πŸ› Troubleshooting

### Common Issues

**"Invalid GitHub token"**
```bash
# Check token is set
echo $GITHUB_TOKEN

# Verify token has gist scope
curl -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/user
```

**"Project not initialized"**
```bash
# Initialize new vault
secrets init

# Or link to existing vault
secrets pull --gist-id your-gist-id
```

**"Decryption failed"**
```bash
# Wrong password - try again
secrets pull

# Vault corrupted - contact vault creator
```

**"File permission denied"**
```bash
# Fix file permissions
chmod 600 .env
```

### Debug Mode
```bash
# Enable verbose logging
export DEBUG=1
secrets status
```

## 🀝 Contributing

We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.

### Quick Start
```bash
git clone https://github.com/mirzamudassir/creds-vault.git
cd creds-vault
make install-dev
make test
```

### Reporting Issues
- [Bug Reports](https://github.com/mirzamudassir/creds-vault/issues)
- [Feature Requests](https://github.com/mirzamudassir/creds-vault/issues)
- [Security Issues](mailto:security@example.com)

## πŸ“„ License

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

## πŸ™ Acknowledgments

- **cryptography**: For robust encryption primitives
- **requests**: For HTTP client functionality  
- **GitHub**: For providing free Gist storage
- **Python community**: For excellent tooling and libraries

## πŸ“š Resources

- [GitHub Gists Documentation](https://docs.github.com/en/github/writing-on-github/editing-and-sharing-content-with-gists)
- [OWASP Cryptographic Storage Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Cryptographic_Storage_Cheat_Sheet.html)
- [NIST Password Guidelines](https://pages.nist.gov/800-63-3/sp800-63b.html)

---

<div align="center">

**[⭐ Star us on GitHub](https://github.com/mirzamudassir/creds-vault)** | **[πŸ“– Read the Docs](https://github.com/mirzamudassir/creds-vault#readme)** | **[πŸ› Report Issues](https://github.com/mirzamudassir/creds-vault/issues)**

Made with ❀️ for developers who care about security

</div>

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "creds-vault",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "Mudassir Mirza <hello.mudassirmirza@gmail.com>",
    "keywords": "secrets-cli, environment, dotenv, encryption, cli, github, gist, security, devops",
    "author": null,
    "author_email": "Mudassir Mirza <hello.mudassirmirza@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/c5/02/fb6fd9bd2196271a43753e6758aec29a214b0c333d70689be8542ba04ab8/creds_vault-1.0.1.tar.gz",
    "platform": null,
    "description": "# Creds Vault \ud83d\udd10\n\n[![PyPI version](https://badge.fury.io/py/creds-vault.svg)](https://badge.fury.io/py/creds-vault)\n[![Python Support](https://img.shields.io/pypi/pyversions/creds-vault.svg)](https://pypi.org/project/creds-vault/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nA secure command-line utility for sharing `.env` files across development teams using GitHub Gists with client-side AES-256 encryption.\n\n## \ud83d\ude80 Features\n\n- **\ud83d\udd12 Client-side Encryption**: AES-256 encryption with PBKDF2 key derivation\n- **\ud83c\udd93 Free Storage**: Uses GitHub Gists (no additional service costs)\n- **\ud83d\udc65 Team-friendly**: Simple sharing via gist IDs\n- **\ud83d\udee1\ufe0f Zero-knowledge**: GitHub never sees your plaintext secrets\n- **\ud83d\udcc1 Project-aware**: Remembers vault configuration per project\n- **\ud83d\udd10 Secure by Default**: Restricted file permissions (600)\n\n## \ud83d\udee1\ufe0f Security Architecture\n\n```\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510    AES-256     \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510    HTTPS    \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502   Local .env    \u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u25b6\u2502  Encrypted Blob  \u2502 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u25b6\u2502 GitHub Gist \u2502\n\u2502   (plaintext)   \u2502   Client-side  \u2502   (ciphertext)   \u2502             \u2502  (private)  \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518                \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518             \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n```\n\n- **Your secrets never leave your machine in plaintext**\n- **Password-based encryption** with 100,000 PBKDF2 iterations\n- **Salt-based security** prevents rainbow table attacks\n- **Private GitHub Gists** for encrypted storage\n\n## \ud83d\udce6 Installation\n\n### Option 1: Install from PyPI (Recommended)\n```bash\npip install creds-vault\n```\n\n### Option 2: Install from Source\n```bash\ngit clone https://github.com/mirzamudassir/creds-vault.git\ncd creds-vault\nmake install\n```\n\n### Option 3: Development Installation\n```bash\ngit clone https://github.com/mirzamudassir/creds-vault.git\ncd creds-vault\nmake install-dev\n```\n\n## \u2699\ufe0f Setup\n\n### 1. GitHub Token Setup\nCreate a GitHub personal access token with `gist` scope:\n\n1. Go to [GitHub Settings \u2192 Tokens](https://github.com/settings/tokens)\n2. Click \"Generate new token (classic)\"\n3. Select **only** the `gist` scope\n4. Copy the token\n\n```bash\n# Set environment variable\nexport GITHUB_TOKEN=\"ghp_your_token_here\"\n\n# Make it permanent\necho 'export GITHUB_TOKEN=\"ghp_your_token_here\"' >> ~/.bashrc\nsource ~/.bashrc\n```\n\n### 2. Verify Installation\n```bash\nsecrets --version\nsecrets --help\n```\n\n## \ud83d\udd04 Usage\n\n### First-time Setup (Project Owner)\n\n```bash\n# Navigate to your project\ncd my-awesome-project\n\n# Create or edit your .env file\ncat > .env << EOF\nDATABASE_URL=postgresql://localhost:5432/myapp\nAPI_KEY=sk-1234567890abcdef\nSTRIPE_SECRET=sk_test_xyz123\nJWT_SECRET=super-secret-jwt-key\nEOF\n\n# Initialize encrypted vault\nsecrets init\n\n# Output:\n# \u2705 Successfully initialized encrypted secrets vault\n# \ud83d\udd12 Content encrypted with AES-256\n# \ud83d\udcdd Gist ID: xxxxxx\n# \n# \ud83d\udce4 Share this command with your team:\n#    secrets pull --gist-id xxxxxx\n# \n# \u26a0\ufe0f  Important: Share the vault password securely!\n```\n\n### Team Member Setup\n\n```bash\n# Navigate to project directory\ncd my-awesome-project\n\n# Pull secrets (replace with actual gist ID)\nsecrets pull --gist-id xxxxxx\n# Enter vault password: \u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\n\n# \u2705 Successfully pulled and decrypted .env\n# \ud83d\udcdd Saved project configuration\n```\n\n### Daily Workflow\n\n```bash\n# Check project status\nsecrets status\n\n# Pull latest changes\nsecrets pull\n\n# Make local changes to .env\necho \"NEW_FEATURE_FLAG=true\" >> .env\n\n# Push changes to vault\nsecrets push\n\n# Check what's configured\nsecrets status\n```\n\n## \ud83d\udccb Command Reference\n\n### `secrets init`\nInitialize encrypted vault with current `.env` file.\n\n```bash\nsecrets init [--filename .env.local]\n```\n\n**Options:**\n- `--filename`: Specify custom env file name (default: `.env`)\n\n### `secrets push`\nPush local env file to vault.\n\n```bash\nsecrets push [--filename .env.local]\n```\n\n**Options:**\n- `--filename`: Specify custom env file name (default: `.env`)\n\n### `secrets pull`\nPull env file from vault.\n\n```bash\nsecrets pull [--gist-id ID] [--filename .env] [--force]\n```\n\n**Options:**\n- `--gist-id`: Gist ID (required for first-time setup)\n- `--filename`: Custom filename (default: auto-detect)\n- `--force`: Overwrite without confirmation\n\n### `secrets status`\nShow project status and configuration.\n\n```bash\nsecrets status\n```\n\n## \ud83c\udfd7\ufe0f Project Structure\n\nAfter installation, your project will have:\n\n```\nyour-project/\n\u251c\u2500\u2500 .env                     # Your secrets file\n\u251c\u2500\u2500 .gitignore              # Should include .env\n\u2514\u2500\u2500 (other project files)\n\n~/.creds-vault/\n\u2514\u2500\u2500 config.json             # Project \u2192 gist mappings\n```\n\n## \ud83d\udd12 Security Best Practices\n\n### Password Security\n- **Use strong passwords**: Minimum 12 characters with mixed case, numbers, symbols\n- **Unique passwords**: Don't reuse passwords from other services\n- **Secure sharing**: Use password managers or secure channels to share vault passwords\n- **Regular rotation**: Consider rotating vault passwords periodically\n\n### GitHub Token Security\n- **Minimal permissions**: Only grant `gist` scope\n- **Regular rotation**: Rotate tokens every 3-6 months\n- **Secure storage**: Never commit tokens to code repositories\n- **Team vs individual**: Consider using team-specific tokens for organizations\n\n### File Security\n- **Gitignore**: Always add `.env*` to your `.gitignore`\n- **Permissions**: Tool automatically sets secure permissions (600)\n- **Cleanup**: Remove `.env` files when no longer needed\n\n## \ud83d\udea8 Security Considerations\n\n### \u2705 What's Protected\n- **Plaintext secrets**: Never transmitted or stored in the cloud\n- **Man-in-the-middle**: HTTPS protects data in transit\n- **GitHub breaches**: Encrypted data remains secure\n- **Token compromise**: Attackers only see encrypted blobs\n\n### \u26a0\ufe0f Limitations\n- **Password security**: Vault security depends on password strength\n- **Local compromise**: If your machine is compromised, local files are at risk\n- **Social engineering**: Sharing passwords insecurely can compromise vaults\n- **GitHub availability**: Service depends on GitHub being accessible\n\n### \ud83c\udfe2 Compliance\n- **Development environments**: Suitable for dev/staging secrets\n- **Production secrets**: Consider dedicated secret management for production\n- **Audit requirements**: Tool doesn't provide audit logs (GitHub does)\n- **Regulatory compliance**: Evaluate against your specific requirements\n\n## \ud83d\udee0\ufe0f Development\n\n### Setup Development Environment\n```bash\ngit clone https://github.com/mirzamudassir/creds-vault.git\ncd creds-vault\nmake install-dev\n```\n\n### Run Tests\n```bash\nmake test\n```\n\n### Code Quality\n```bash\nmake lint          # Run linting\nmake format        # Format code\nmake check         # Lint + test\n```\n\n### Build and Release\n```bash\nmake build         # Build distribution\nmake publish       # Publish to PyPI\n```\n\n## \ud83d\udd27 Advanced Usage\n\n### Custom Filenames\n```bash\n# Initialize with custom filename\nsecrets init --filename .env.production\n\n# Push/pull custom files\nsecrets push --filename .env.local\nsecrets pull --filename .env.staging\n```\n\n### Multiple Projects\nThe tool automatically manages different vaults per project:\n\n```bash\ncd project-a\nsecrets init        # Creates vault A\n\ncd ../project-b  \nsecrets init        # Creates vault B\n\nsecrets status      # Shows project B config\ncd ../project-a\nsecrets status      # Shows project A config\n```\n\n### CI/CD Integration\n```bash\n# In CI/CD pipeline\nexport GITHUB_TOKEN=\"${{ secrets.GITHUB_TOKEN }}\"\nsecrets pull --gist-id $VAULT_ID --force\n```\n\n## \ud83d\udc1b Troubleshooting\n\n### Common Issues\n\n**\"Invalid GitHub token\"**\n```bash\n# Check token is set\necho $GITHUB_TOKEN\n\n# Verify token has gist scope\ncurl -H \"Authorization: token $GITHUB_TOKEN\" https://api.github.com/user\n```\n\n**\"Project not initialized\"**\n```bash\n# Initialize new vault\nsecrets init\n\n# Or link to existing vault\nsecrets pull --gist-id your-gist-id\n```\n\n**\"Decryption failed\"**\n```bash\n# Wrong password - try again\nsecrets pull\n\n# Vault corrupted - contact vault creator\n```\n\n**\"File permission denied\"**\n```bash\n# Fix file permissions\nchmod 600 .env\n```\n\n### Debug Mode\n```bash\n# Enable verbose logging\nexport DEBUG=1\nsecrets status\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n### Quick Start\n```bash\ngit clone https://github.com/mirzamudassir/creds-vault.git\ncd creds-vault\nmake install-dev\nmake test\n```\n\n### Reporting Issues\n- [Bug Reports](https://github.com/mirzamudassir/creds-vault/issues)\n- [Feature Requests](https://github.com/mirzamudassir/creds-vault/issues)\n- [Security Issues](mailto:security@example.com)\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgments\n\n- **cryptography**: For robust encryption primitives\n- **requests**: For HTTP client functionality  \n- **GitHub**: For providing free Gist storage\n- **Python community**: For excellent tooling and libraries\n\n## \ud83d\udcda Resources\n\n- [GitHub Gists Documentation](https://docs.github.com/en/github/writing-on-github/editing-and-sharing-content-with-gists)\n- [OWASP Cryptographic Storage Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Cryptographic_Storage_Cheat_Sheet.html)\n- [NIST Password Guidelines](https://pages.nist.gov/800-63-3/sp800-63b.html)\n\n---\n\n<div align=\"center\">\n\n**[\u2b50 Star us on GitHub](https://github.com/mirzamudassir/creds-vault)** | **[\ud83d\udcd6 Read the Docs](https://github.com/mirzamudassir/creds-vault#readme)** | **[\ud83d\udc1b Report Issues](https://github.com/mirzamudassir/creds-vault/issues)**\n\nMade with \u2764\ufe0f for developers who care about security\n\n</div>\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Secure environment variable synchronization tool",
    "version": "1.0.1",
    "project_urls": {
        "Bug Reports": "https://github.com/mirzamudassir/secrets-cli/issues",
        "Changelog": "https://github.com/mirzamudassir/secrets-cli/blob/main/CHANGELOG.md",
        "Documentation": "https://github.com/mirzamudassir/secrets-cli#readme",
        "Homepage": "https://github.com/mirzamudassir/secrets-cli",
        "Repository": "https://github.com/mirzamudassir/secrets-cli"
    },
    "split_keywords": [
        "secrets-cli",
        " environment",
        " dotenv",
        " encryption",
        " cli",
        " github",
        " gist",
        " security",
        " devops"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bb33ed1e9d10ef9e39f768a198f402d89eed7f941fed271297688ece5d64b1a2",
                "md5": "bfb1338622820e08f56ed2a3cac325aa",
                "sha256": "0b023e1428a8f259e481f926db071b8972f65fb9931f18cd53369ed4783f525f"
            },
            "downloads": -1,
            "filename": "creds_vault-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "bfb1338622820e08f56ed2a3cac325aa",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 12036,
            "upload_time": "2025-08-26T15:37:01",
            "upload_time_iso_8601": "2025-08-26T15:37:01.730419Z",
            "url": "https://files.pythonhosted.org/packages/bb/33/ed1e9d10ef9e39f768a198f402d89eed7f941fed271297688ece5d64b1a2/creds_vault-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c502fb6fd9bd2196271a43753e6758aec29a214b0c333d70689be8542ba04ab8",
                "md5": "77a2040b522222a514bfa463a5489324",
                "sha256": "389eaec7d99a63666a460387de3cfd8a41864f89c1e95ffaf2bcac3305cfe1b3"
            },
            "downloads": -1,
            "filename": "creds_vault-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "77a2040b522222a514bfa463a5489324",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 12140,
            "upload_time": "2025-08-26T15:37:02",
            "upload_time_iso_8601": "2025-08-26T15:37:02.952282Z",
            "url": "https://files.pythonhosted.org/packages/c5/02/fb6fd9bd2196271a43753e6758aec29a214b0c333d70689be8542ba04ab8/creds_vault-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-26 15:37:02",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mirzamudassir",
    "github_project": "secrets-cli",
    "github_not_found": true,
    "lcname": "creds-vault"
}
        
Elapsed time: 1.35299s