Plugin system for a Meteor App, dynamic module loading

Hello Everybody,

I’m trying to build a big app, which I hope will be used by multiple people and developed over a long period of time.

I would like to create a plugin system, where modules are loaded to implement functionalities. Meteor Packages could be an option, but I was thinking about going straight with modules import.

My goals are:

  1. Enable Plugins via the GUI.

I guess that I can not do this at run time, I would have to have an import file with all plugins imports, append or remove imports statement from such file, and then reload meteor.

Or is there a way to import/require at run time?

  1. Object Oriented GUI.

Let’s say a plugin adds an entry for a menu, or a path for the router. How could the app collect all such info and render correctly? Is there a way to do object oriented GUI? Or should I think in advance about all possible cases and build the structure to support those cases?

Could you point me resources to help me build a modular architecture with meteor?

hey @muaddib, I think the closest thing to what you’re looking for is from the wekan team (@mquandalle): https://discuss.wekan.io/t/rfc-the-plugin-system/132

2 Likes