Metadata-Version: 2.4
Name: devbolt
Version: 1.0.3
Summary: Python SDK for DevBolt feature flags
Author-email: DevBolt <support@modelred.ai>
License: MIT
Project-URL: Homepage, https://github.com/ModelRed/devbolt
Project-URL: Documentation, https://github.com/ModelRed/devbolt
Project-URL: Repository, https://github.com/ModelRed/devbolt
Project-URL: Issues, https://github.com/ModelRed/devbolt/issues
Keywords: feature-flags,feature-toggles,devbolt,flags,rollout,targeting
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: pyyaml>=6.0
Requires-Dist: watchdog>=3.0.0
Requires-Dist: typing-extensions>=4.0.0; python_version < "3.11"
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: types-pyyaml>=6.0.0; extra == "dev"

# DevBolt Python SDK

Python SDK for DevBolt feature flags.

## Installation

```bash
pip install devbolt
```

## Quick Start

```python
from devbolt import DevBoltClient, EvaluationContext

# Initialize client
client = DevBoltClient()

# Check if flag is enabled
if client.is_enabled("new_feature"):
    print("New feature enabled!")

# With context
context = EvaluationContext(
    user_id="user-123",
    email="john@example.com"
)

if client.is_enabled("premium_features", context):
    print("Premium features enabled!")

# Get detailed evaluation
result = client.evaluate("new_checkout", context)
print(f"Enabled: {result.enabled}")
print(f"Reason: {result.reason}")
```

## Documentation

See main [DevBolt documentation](https://devbolt.com/docs) for details.

## License

MIT
