1.1. Introduction¶
1.1.1. Motivation¶
1.1.1.1. What we needed¶
- Python based plugin system
- use case unbound plugin system
- Combination of code, tests and documentation
- Access to plugin/system meta-data during runtime
- pythonic plugin system
- Plugin activation/deactivation during runtime
1.1.1.2. What we have found¶
- Plugin systems created for use cases: django, flask, qt, pytest …
- Plugin systems with hard coded constraints (file structure, given names, …)
- Activation only during application start up
1.1.1.3. What we have created¶
A pythonic plugin system, which is designed to be used for each use case and for each tool/library.
1.1.2. Composition¶
Note
A more detailed description can be found in the technical documentation of groundwork’s architecture.
1.1.3. Batteries included¶
Note
Visit groundwork.useblocks.com for a nice-looking list of integrated libraries.
- sphinx
- cookiecutter
- click
- blinker
- jinja
- rst
- pytest
- tox
- buildout
1.1.4. Extensions¶
Note
For a list of known extensions take a look into the related chapter of groundwork’s technical documentation.
- groundwork-web
- groundwork-database
That’s enough of the dry theory. Let’s start installing something. Open Installation.