I’m designing a desktop application that is meant to be extended by third-party developers via plugins.
A hard requirement is that plugins can be hot reloaded both during development and while the app is running, without restarting the main application.
The goal is something similar to VSCode or Obsidian, where plugins can also contribute UI elements.
The primary target platform is Linux desktop.
Would Flutter be a good choice for this architecture?
Some specific concerns:
-
Dynamic plugin loading/unloading at runtime
-
Sandboxing/isolation between plugins
-
Allowing plugins to inject custom UI
-
IPC vs in-process plugins
-
Developer experience for plugin authors
-
Performance/memory implications on Linux desktop
I’d also appreciate hearing from anyone who has attempted something similar with Flutter desktop.