A library for loading plugins in Python applications.
Grappler is a set of tools for loading plugins into a Python application. With it, you can load third-party plugins which advertise along specific topics, and perform additional filtering according to the tools provided with the library. Furthermore, Grappler is compatible with typed Python out of the box.
- Extremely simple interface for loading entry-points out of the box.
- Extensible design, allowing implementation of new plugin sources with the Grappler interface
- Composable API for customizing plugin sources and loading behaviour
- Handy built-in tools to help with customising loading behavior (e.g. blacklisting plugins so that their code is never loaded).
Installation requires Python 3.8 or later.
pip install grappler
See the quickstart guide
Documentation can be found in project source code (as docstrings), with supplementary
documentation provided in the docs folder of the source distribution.
Documentation is built using MkDocs; To build, run the following command:
pdm run mkdocs build
A built copy of the documentation is hosted on https://mr-rodgers.github.io/grappler/.