Plugin system development for Elixir and Phoenix apps.
When every customer request turns into a change to your app's core, each release gets riskier. With a plugin system, your app fires named events such as after_login, and features attach to them as plugins that run in order, can stop the chain, and can be switched on or off while the app runs. We design the events and build the system, so new features live in plugins instead of in the core.
What you get
- A map of the events your app fires and the data each one carries.
- Plugins that run by priority, wait for the plugins they depend on, and can halt the chain.
- Each plugin in its own supervised process, with a status, a health check and on and off switches at runtime.
- A plugin registry that stays in sync across every node of a cluster.
- Optional loading of pre-built plugins into a running app from a path, a URL or a GitHub release, behind an allowlist and a checksum.
- Docs and sample plugins, so your team or outside partners can write their own.
Built with our own tools
We wrote Mishka Installer, the open-source plugin and event manager for Elixir, and our own products run on it. In Mishka CMS, the dashboard widgets and sidebar menus are plugins on the CMS's own events, and extensions such as Mishka Blog hook in the same way.
Want your app to take plugins?
Tell us about your project. We reply within 48 hours, and after a free discovery call you get a fixed-price proposal.
Mishka is registered with the Dutch Chamber of Commerce · KvK 95426736 · Amsterdam