Metadata-Version: 2.4
Name: byro
Version: 2026.3.0
Summary: Membership and fees management for associations, clubs and groups
Home-page: https://byro.cloud
Author: Tobias Kunze
Author-email: r@rixx.de
License: AGPL-3.0-only
Keywords: members membership fees club group clubs associations association
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 5.2
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Other Audience
Classifier: License :: OSI Approved
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Requires-Python: >=3.12
Requires-Dist: canonicaljson==2.0.0
Requires-Dist: celery<6.0,>=5.4
Requires-Dist: chardet<7.7,>=5.2
Requires-Dist: csscompressor~=0.9.5
Requires-Dist: dateparser<1.5,>=1.1
Requires-Dist: django-annoying~=0.10.0
Requires-Dist: django-bootstrap4<26.3,>=23.1
Requires-Dist: django-compressor<5.0,>=2.4
Requires-Dist: django-extensions<4.2,>=3.1
Requires-Dist: django-i18nfield<1.12,>=1.9
Requires-Dist: django-formset-js-improved==0.5.0.5
Requires-Dist: django-libsass<0.10,>=0.8
Requires-Dist: django-localflavor<5.2,>=3.0
Requires-Dist: django-otp<1.8,>=1.6
Requires-Dist: django-select2<8.5,>=7.7
Requires-Dist: django-solo<2.6,>=2.1
Requires-Dist: Django<5.3,>=5.2
Requires-Dist: inlinestyler~=0.2
Requires-Dist: jinja2>=2.10.1
Requires-Dist: more-itertools<11.2,>=8.10
Requires-Dist: psycopg2-binary
Requires-Dist: PyJWT[crypto]<3,>=2.8
Requires-Dist: pynacl<1.7,>=1.4
Requires-Dist: python-dateutil
Requires-Dist: python-magic~=0.4.0
Requires-Dist: qrcode[pil]<8.3,>=7.3
Requires-Dist: schwifty==2026.7.3
Requires-Dist: unicodecsv~=0.14.0
Requires-Dist: whitenoise<6.13,>=6.4
Requires-Dist: djangorestframework<4.0,>=3.14
Requires-Dist: django-filter<27,>=23
Requires-Dist: drf-spectacular<1.0,>=0.27
Provides-Extra: dev
Requires-Dist: black; extra == "dev"
Requires-Dist: check-manifest; extra == "dev"
Requires-Dist: djhtml; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Requires-Dist: freezegun; extra == "dev"
Requires-Dist: isort; extra == "dev"
Requires-Dist: ipython; extra == "dev"
Requires-Dist: pytest<10; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: pytest-django; extra == "dev"
Requires-Dist: pytest-rerunfailures; extra == "dev"
Requires-Dist: pytest-sugar; extra == "dev"
Requires-Dist: pytest-xdist; extra == "dev"
Provides-Extra: mysql
Requires-Dist: mysqlclient; extra == "mysql"
Provides-Extra: postgres
Requires-Dist: psycopg2-binary; extra == "postgres"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

|byro|
======

.. image:: https://img.shields.io/github/v/release/byro/byro
   :target: https://github.com/byro/byro/releases/latest
   :alt: GitHub release (with filter)

.. image:: https://img.shields.io/pypi/v/byro
   :target: https://pypi.org/project/byro/
   :alt: PyPI - Version

.. image:: https://github.com/byro/byro/actions/workflows/ci-cd.yml/badge.svg?branch=main
   :target: https://github.com/byro/byro/actions/workflows/ci-cd.yml?query=branch%3Amain
   :alt: CI/CD

.. image:: https://codecov.io/gh/byro/byro/branch/main/graph/badge.svg
   :target: https://codecov.io/gh/byro/byro
   :alt: Code coverage

.. image:: https://img.shields.io/codeclimate/maintainability/byro/byro.svg
   :target: https://codeclimate.com/github/byro/byro
   :alt: Code maintainability

.. image:: https://readthedocs.org/projects/byro/badge/?version=latest
   :target: http://byro.readthedocs.io/
   :alt: Documentation



byro_ is a membership administration tool for small and medium sized
clubs/NGOs/associations of all kinds, with a focus on the DACH region. While it
is still a work in progress, it is already usable and in active use.

.. image:: https://raw.githubusercontent.com/byro/byro/main/docs/img/screenshots/office_dashboard.png

Development and Production Setup
--------------------------------

Please refer to the `development`_ or the `production documentation`_. The
recommended way to run byro is `byroctl`_, which installs and updates a
Docker based deployment with one command; Docker Compose by hand and a plain
installation from PyPI are documented as well.

Features
--------


Planned features
----------------


Plugins
-------

byro provides a rich API for plugins. See our `developer documentation`_ if you want to write a
plugin.

Plugins that work with the current byro release are listed in the `plugin catalog`_ that ships
with every release; administrators install them with ``byroctl plugin add <name>`` (see the
`plugin documentation`_). To get a plugin listed, publish a GitHub release and open a pull request
against the catalog.

- `byro-finance-import-bank-files`_ imports file-based bank statements, currently CAMT.053.
- `byro-mailman`_ (mailing list integration) and `byro-gemeinnuetzigkeit`_ (receipts for German
  non-profits) exist, but are not yet compatible with byro 2026.x.

Community plugins are encouraged to add the `byro-plugin` tag if they are on GitHub. You can see
all byro plugins on GitHub `here`_; byroctl never installs anything from that list on its own.
`byro-shackspace`_ is an example for how a group can extend or modify byro to fit their purpose,
e.g. add custom mechanisms and save additional data.

License
-------

byro is licensed under the GNU Affero General Public License, version 3.0 only
(``AGPL-3.0-only``). Older versions of byro were released under the Apache
License 2.0. The documentation in ``docs/`` is licensed under the Creative
Commons Attribution-ShareAlike 4.0 International License (``CC-BY-SA-4.0``).
See the `LICENSE`_ file for details, including the licensing history and the
licenses of bundled third-party components.

.. |byro| image:: https://raw.githubusercontent.com/byro/byro/main/docs/img/logo/byro_128.png
   :alt: byro
.. _developer documentation: http://byro.readthedocs.io/en/latest/
.. _development: https://byro.readthedocs.io/en/latest/developer/setup.html
.. _byro: https://byro.cloud
.. _here: https://github.com/topics/byro-plugin
.. _plugin catalog: https://github.com/byro/byro/blob/main/deploy/plugin-catalog.conf
.. _plugin documentation: https://byro.readthedocs.io/en/latest/administrator/plugins.html
.. _byro-finance-import-bank-files: https://github.com/byro/byro-finance-import-bank-files
.. _byro-mailman: https://github.com/byro/byro-mailman
.. _byro-gemeinnuetzigkeit: https://github.com/byro/byro-gemeinnuetzigkeit
.. _byro-shackspace: https://github.com/byro/byro-shackspace
.. _production documentation: https://byro.readthedocs.io/en/latest/administrator/
.. _byroctl: https://byro.readthedocs.io/en/latest/administrator/installation-byroctl.html
.. _LICENSE: https://github.com/byro/byro/blob/main/LICENSE
