Metadata-Version: 2.1
Name: eventing
Version: 0.1.0
Summary: A pythonic event emitter inspired by Node.js' EventEmitter and Python's logging libraries.
Author-email: Tim Johansson <tim.den.vilde@gmail.com>
Requires-Python: >=3.9,<4
Description-Content-Type: text/markdown
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: Implementation :: CPython
Requires-Dist: flit ==3.7.1 ; extra == "dev"
Requires-Dist: tox ==3.25.0 ; extra == "dev"
Requires-Dist: sphinx ==4.5.0 ; extra == "doc"
Requires-Dist: sphinx_rtd_theme ==1.0.0 ; extra == "doc"
Requires-Dist: pre-commit ==2.19.0 ; extra == "pre-commit"
Requires-Dist: pytest ==7.1.2 ; extra == "test"
Requires-Dist: pytest-asyncio ==0.18.3 ; extra == "test"
Project-URL: changelog, https://github.com/tim-timman/eventing/blob/master/CHANGELOG.md
Project-URL: documentation, https://eventing.readthedocs.io/en/latest/
Project-URL: repository, https://github.com/tim-timmman/eventing
Provides-Extra: dev
Provides-Extra: doc
Provides-Extra: pre-commit
Provides-Extra: test

# eventing
[![Tests][test-badge]][test-uri]
[![Documentation Status][rtd-badge]][rtd-uri]

[test-badge]: https://github.com/tim-timman/eventing/actions/workflows/tests.yaml/badge.svg?branch=master&event=push
[test-uri]: https://github.com/tim-timman/eventing/actions/workflows/tests.yaml
[rtd-badge]: https://readthedocs.org/projects/eventing/badge/?version=latest
[rtd-uri]: https://eventing.readthedocs.io/en/latest/?badge=latest

A pythonic event emitter inspired by Node.js' [EventEmitter][njs-ee]
and Python's [logging][pylogging] libraries.

[njs-ee]: https://nodejs.org/api/events.html#class-eventemitter
[pylogging]: https://docs.python.org/3/library/logging.html

This project adheres to [Semantic Versioning][semver].

[semver]: https://semver.org/spec/v2.0.0.html

### Rationale
This project sprung to life partly from wanting to learn TDD and publishing a
python package, but also from the need of an event pattern akin to Node.js'
EventEmitter that will with asyncio in a nice pythonic way.

I envision it in a similar API as Python's logging module, in that it'll
"just work" regardless of event loops, threads (and possibly even subprocesses);
something I haven't found in the myriad event packages on PyPI. Hopefully, it'll
become something of use to others as well.

## Docs
Autogenerated API docs can be found at <https://eventing.readthedocs.io>.

> **Note:** Until a version `>=1.0.0` these are not maintained as a public API
> has yet to be established.

## Development

See [DEVELOPMENT][dev-doc]

[dev-doc]: https://github.com/tim-timman/eventing/blob/master/DEVELOPMENT.md

## Changelog

See [CHANGELOG][changelog]

[changelog]: https://github.com/tim-timman/eventing/blob/master/CHANGELOG.md

## License

MIT, see [LICENSE][license]

[license]: https://github.com/tim-timman/eventing/blob/master/LICENSE

