Metadata-Version: 2.1
Name: pluginbase
Version: 1.0.1
Summary: PluginBase is a module for Python that enables the development of flexible plugin systems in Python.
Home-page: http://github.com/mitsuhiko/pluginbase
Author: Armin Ronacher
Author-email: armin.ronacher@active-4.com
Maintainer: Spencer McIntyre
Maintainer-email: zeroSteiner@gmail.com
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
License-File: LICENSE

PluginBase
==========

PluginBase is a module for Python that enables the development of flexible plugin systems in Python.

Step 1:

.. code-block:: python

   from pluginbase import PluginBase
   plugin_base = PluginBase(package='yourapplication.plugins')

Step 2:

.. code-block:: python

   plugin_source = plugin_base.make_plugin_source(
       searchpath=['./path/to/plugins', './path/to/more/plugins'])

Step 3:

.. code-block:: python

   with plugin_source:
       from yourapplication.plugins import my_plugin
   my_plugin.do_something_cool()

Or alternatively:

.. code-block:: python

   my_plugin = plugin_source.load_plugin('my_plugin')
   my_plugin.do_something_cool()
