jellycommands icon indicating copy to clipboard operation
jellycommands copied to clipboard

Plugin System

Open ghostdevv opened this issue 1 year ago • 5 comments

Describe the feature

A system that allows for loading features (#183), and transforming their options

Examples

No response

ghostdevv avatar Nov 04 '24 00:11 ghostdevv

The groundwork has been done in #206 and includes the ability for custom features. A public API can be worked on for the next release

ghostdevv avatar Nov 04 '24 05:11 ghostdevv

If anyone has use cases for plugins, please share what they are and what you would need from the plugin system! The only planned plugin right now is one that allows custom components. Other ideas are appreciated and will help shape the plugin system

ghostdevv avatar Nov 08 '24 20:11 ghostdevv

Maybe a plugin that can provide props

ghostdevv avatar Nov 10 '24 16:11 ghostdevv

Plugin hooks should be passed a "plugin context" that includes the client and a logger

ghostdevv avatar Nov 10 '24 20:11 ghostdevv

I'm still somewhat considering using hookable for some of this rather than plugins, as the plugins would just contain hooks anyway... just need to investigate what that looks like. Plugins may need to be able to return data, as well as mutate it. Additionally, plugins should be importable from a package.

ghostdevv avatar Nov 10 '24 20:11 ghostdevv