nself-plugin
Python plugin authoring SDK for nSelf. Parity with plugin-sdk-go v0.1.0.
Install
pip install nself-plugin
For database migrations:
pip install 'nself-plugin[db]'
Quick start
from nself_plugin import Plugin, PluginContext, HealthStatus
plugin = Plugin(name="my-notify", version="1.0.0")
@plugin.install
async def install(ctx: PluginContext) -> None:
ctx.env.require(["SMTP_HOST", "SMTP_PORT"])
@plugin.start
async def start(ctx: PluginContext) -> None:
app = ctx.http.create_app()
app.post("/notify/send")(handler)
await ctx.http.listen(ctx.port)
@plugin.health
async def health(ctx: PluginContext) -> HealthStatus:
return await ctx.http.ping("/notify/healthz")
Scaffold a plugin
nself plugin new my-plugin --lang python
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nself_plugin_sdk-1.3.1.tar.gz
(10.5 kB
view details)
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 nself_plugin_sdk-1.3.1.tar.gz.
File metadata
- Download URL: nself_plugin_sdk-1.3.1.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.11.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e42e2de5c55bbe93b86881d58c69bcff7355698ca0e4633ae029e03f7211229
|
|
| MD5 |
c0245bb1edce73afc094175fcbbe88ab
|
|
| BLAKE2b-256 |
c05f6ffd0fce917f19c67a1a7d379d7f93a8913f33722e0d08a21523b3df3812
|
File details
Details for the file nself_plugin_sdk-1.3.1-py3-none-any.whl.
File metadata
- Download URL: nself_plugin_sdk-1.3.1-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.11.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eef24c115de4477844aca64877b920ecf07a340cbf6150d0f09b26312e6e9042
|
|
| MD5 |
dfad565db64b87e723af1e9902452b25
|
|
| BLAKE2b-256 |
f19478383e620c0a8837e80f69925cfdd8a9781efd320c74fff51f77df237853
|