A modular plugin system for Python.
Project description
XtendR
A very basic Python 3.12 friendly plugin system based on the K.I.S.S principle.
I was in need of a new plugin system, which should meet these requirements:
:heavy_plus_sign: Simple to use
:heavy_plus_sign: Work well with Python 3.12
:heavy_plus_sign: Maintainable - Don't expect to see new releases every month. If it ain't broken, don't fix it!!!
I previously used yapsy, but it doesn't meet the requirements anymore.
:x: No longer simple, and simple to use (Simplicity in use has been sacrificed for more complexity. It has become bloated)
:x: Not workink with Python 3.12
:x: No longer maintained (Hasn't been maintained for a few years)
I didn't find anything that suited my needs, so I decided to make my own plugin system.
It simply contains 2 classes, one for the plugin system and one abstraction base class for the plugins themselves.
At the moment only 4 functions are available:
- Attach - including call to pre-load data in plugin.
- Run
- Stop
- Detach
Attach and Detach are used for registrering/unregistrering a module on the system. The Run and Stop functions are mandatory in the plugin modules.
The system expects a folder called 'plugins', placed at the root, along side your main python file. Each plugin should be placed in subfolders, named as the plugin, inside the 'plugins' folder.
The example.py along with the plugins/example_plugin/example_plugin.py and plugins/example_plugin/example_plugin.json shows the workings of this plugin system.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xtendr-0.3.3.1.tar.gz.
File metadata
- Download URL: xtendr-0.3.3.1.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7401c59e4cb2d7081e11244cd58a487d552822f579a934474d7390d220bea16d
|
|
| MD5 |
0a81d528a6a5c1c19a816f65606c8412
|
|
| BLAKE2b-256 |
7d6ac6cfaf4bba07047220d3c7dcbac99dca00e2ba9f5bd4a189b90968307b2c
|
File details
Details for the file xtendr-0.3.3.1-py3-none-any.whl.
File metadata
- Download URL: xtendr-0.3.3.1-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec01b1772889af105776f74123a6c528b3f043529755fae739c523e63ebc27c9
|
|
| MD5 |
0fbac4e91b18c04437d8622dcb220ed2
|
|
| BLAKE2b-256 |
c0075b0019d75f51f2510bf62774d47d71e8f1b9550b518e215a795a2b492bfc
|