Metadata-Version: 2.1
Name: bovine
Version: 0.2.4
Summary: Core functionality of bovine needed to build fediverse applications
Home-page: https://codeberg.org/bovine/bovine
License: MIT
Author: Helge
Author-email: helge.krueger@gmail.com
Requires-Python: >=3.10,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Provides-Extra: repl
Requires-Dist: aiodns (>=3.0.0,<4.0.0)
Requires-Dist: aiohttp (>=3.8.3,<4.0.0)
Requires-Dist: bleach (>=6.0.0,<7.0.0) ; extra == "repl"
Requires-Dist: cryptography (>=39.0.0,<40.0.0)
Requires-Dist: multiformats (>=0.2.1,<0.3.0)
Requires-Dist: ptpython (>=3.0.23,<4.0.0) ; extra == "repl"
Requires-Dist: pyld (>=2.0.3,<3.0.0)
Requires-Dist: python-dateutil (>=2.8.2,<3.0.0)
Requires-Dist: requests (>=2.30.0,<3.0.0)
Requires-Dist: requests-cache (>=0.9.8,<0.10.0)
Requires-Dist: tomli (>=2.0.1,<3.0.0)
Project-URL: Documentation, https://bovine.readthedocs.io/en/latest/
Project-URL: Repository, https://codeberg.org/bovine/bovine
Description-Content-Type: text/markdown

# Bovine

Bovine is a basic utility library for the Fediverse. It can be used both to build ActivityPub Client applications and ActivityPub Servers. In addition to [ActivityPub](https://activitypub.rocks/) support, it also provides utilities to deal with [webfinger](https://webfinger.net), nodeinfo, and HTTP Signatures.

The bovine library can just be installed via pip

```bash
pip install bovine
```

Documentation including tutorials is available at [ReadTheDocs](https://bovine.readthedocs.io/en/latest/).
An entire working ActivityPub server can be found in the [bovine repository](https://codeberg.org/bovine/bovine/).

## Feedback

Issues about bovine should be filed as an [issue](https://codeberg.org/bovine/bovine/issues).

## Contributing

If you want to contribute, you can start by working on issues labeled [Good first issue](https://codeberg.org/bovine/bovine/issues?q=&type=all&state=open&labels=110885&milestone=0&assignee=0&poster=0). The tech stack is currently based on asynchronous python, using the following components:

- [aiohttp](https://docs.aiohttp.org/en/stable/index.html) for http requests.
- [quart](https://quart.palletsprojects.com/en/latest/) as a webserver.
- [cryptography](https://cryptography.io/en/latest/).
- [pytest](https://docs.pytest.org/en/7.3.x/) for testing.
- [ruff](https://pypi.org/project/ruff/) for linting.

