Metadata-Version: 2.1
Name: keepassxc-async
Version: 0.0.1
Summary: Asyncio-compatible client for the KeePassXC browser protocol.
Author: Max Lang
Project-URL: Homepage, https://github.com/just-max/python-keepassxc-async
Project-URL: Repository, https://github.com/just-max/python-keepassxc-async.git
Project-URL: Issues, https://github.com/just-max/python-keepassxc-async/issues
Keywords: keepassxc,asyncio
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: PyNaCl~=1.5.0

# keepassxc-async

Asyncio-compatible client for the [KeePassXC browser protocol](https://github.com/keepassxreboot/keepassxc-browser/blob/develop/keepassxc-protocol.md).

Tested with KeePassXC 2.7.6. Please open an issue if there is an incompatibility with a different version.

## Usage

Minimal example to connect to a database for the first time:

```python
import asyncio
from keepassxc.database import Client, generate_identification_key

async def main():
    async with await Client.create() as client:
        await client.wait_unlocked()
        identification_key = generate_identification_key()
        assoc, meta = await client.associate(identification_key)
        print(f"Connected to KeePassXC {meta.version} with ID {assoc.id!r}.")

if __name__ == '__main__':
    asyncio.run(main())
```

For a complete example with different operations and including error handling, see `examples/example.py`.

## License

MIT License. Copyright © 2024 Max Lang. See `LICENSE` for details.
