Metadata-Version: 2.1
Name: acb
Version: 0.3.4
Summary: Asynchronous Code Base
Author-Email: lesleslie <les@wedgwoodwebworks.com>
License: BSD-3-Clause
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.12
Classifier: Framework :: Pydantic
Classifier: Framework :: Pydantic :: 2
Classifier: Framework :: AsyncIO
Classifier: Typing :: Typed
Classifier: License :: OSI Approved :: BSD License
Classifier: Development Status :: 3 - Alpha
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Project-URL: Homepage, https://github.com/lesleslie/acb
Project-URL: Documentation, https://github.com/lesleslie/acb
Project-URL: Repository, https://github.com/lesleslie/acb
Requires-Python: >=3.12
Requires-Dist: itsdangerous>=2.1.2
Requires-Dist: arrow>=1.3.0
Requires-Dist: google-crc32c>=1.5.0
Requires-Dist: dill>=0.3.7
Requires-Dist: blake3>=0.3.3
Requires-Dist: loguru>=0.7.2
Requires-Dist: msgspec[toml]>=0.18.4
Requires-Dist: nest-asyncio>=1.5.8
Requires-Dist: pydantic-settings>=2.0.3
Requires-Dist: bevy>=2.0.1
Requires-Dist: icecream>=2.1.3
Requires-Dist: pydantic>=2.4.0
Requires-Dist: brotli>=1.1.0
Requires-Dist: ulid-py>=1.1.0
Requires-Dist: pyfiglet>=1.0.2
Requires-Dist: alive-progress>=3.1.4
Requires-Dist: pluginbase>=1.0.1
Requires-Dist: inflection>=0.5.1
Requires-Dist: aiopath>=0.7.5
Requires-Dist: cashews[redis]>=6.3.0; extra == "cache"
Requires-Dist: gcsfs>=2023.9.2; extra == "storage"
Requires-Dist: s3fs>=2023.9.2; extra == "storage"
Requires-Dist: adlfs>=2023.9.0; extra == "storage"
Requires-Dist: google-cloud-dns>=0.34.1; extra == "dns"
Requires-Dist: validators>=0.22.0; extra == "dns"
Requires-Dist: httpx[http2]>=0.25.0; extra == "requests"
Requires-Dist: hishel>=0.0.13; extra == "requests"
Requires-Dist: mailgun>=0.1.1; extra == "email"
Requires-Dist: google-cloud-secret-manager>=2.16.4; extra == "secrets"
Requires-Dist: sqlalchemy>=2.0.11; extra == "sql"
Requires-Dist: sqlalchemy-utils>=0.41.1; extra == "sql"
Requires-Dist: mysqlclient>=2.2.0; extra == "sql"
Requires-Dist: asyncmy>=0.2.8; extra == "sql"
Requires-Dist: google-cloud-firestore>=2.12.0; extra == "nosql"
Requires-Dist: motor>=3.3.1; extra == "nosql"
Requires-Dist: faker>=19.10.0; extra == "demo"
Provides-Extra: cache
Provides-Extra: storage
Provides-Extra: dns
Provides-Extra: requests
Provides-Extra: email
Provides-Extra: secrets
Provides-Extra: sql
Provides-Extra: nosql
Provides-Extra: demo
Description-Content-Type: text/markdown

<p align="center">
<img src="https://drive.google.com/uc?id=1pMUqyvgMkhGYoLz3jBibZDl3J63HEcCC">
</p>

# <u>A</u>synchronous <u>C</u>omponent <u>B</u>ase

[![Code style: crackerjack](https://img.shields.io/badge/code%20style-crackerjack-000042)](https://github.com/lesleslie/crackerjack)


Asynchronous Component Base, or 'acb', is a collection of modular
components (actions / adapters) that provide the building blocks for rapid,
asynchronous, application development.
This codebase should be considered alpha right now as it is under
heavy development. A majority of the components are currently being back-ported from
other apps and may not currently work as intended.

More documentation is on the way!

## Installation

```
pdm add acb
```

## Actions

### Encode

```
from acb.actions.encode import load

load.json(obj)
```

### Hash

```
from acb.actions.hash import hash

hash.blake2b(obj)
```

## Configuration

```
from acb.config import (
    Config,
    Settings,
)
```

## Logging

```
from acb.adapters.logger import Logger
```



## Adapters


## Acknowledgements


## License

BSD-3-Clause
