Skip to content

Another plugin system#38

Draft
garthk wants to merge 4 commits intogeekscape:masterfrom
garthk:feat/plugins
Draft

Another plugin system#38
garthk wants to merge 4 commits intogeekscape:masterfrom
garthk:feat/plugins

Conversation

@garthk
Copy link

@garthk garthk commented Jan 29, 2021

Like @Enderboi's #35, but with:

  • Added support for directory modules as well as single files
  • Switched to initialise functions to match the rest of the framework
  • Excluded plugins named initialise to avoid a namespace clash after import plugins
  • Took out the global parameter: the plugin system always runs at boot
  • Added implicit parameters to disable plugins
  • Some documentation
  • Appropriate changes to the deployment scripts

Convo here or there fine.

Based on work by `@enderboi`. Main differences so far:

* `plugins/README.md`
* The plugin system always runs at boot
* Individual plugins can be disabled
* Plugins can be directory modules as well as single files

I've kept the `plugins.*` namespace empty of anything except its
`initialise` function and any imported plugins. I'm using
`plugins.initialise` to match the rest of the framework.
@garthk
Copy link
Author

garthk commented Jan 29, 2021

Sorry about that; took out the dependency on #34.

@garthk
Copy link
Author

garthk commented Jan 30, 2021

I've added another example plugin to automatically chase some colours across the pixels at boot time.

This was referenced Jan 30, 2021
TL;DR: assign bytes directly into `pixel.buf`, then call `pixel.write()`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant