Feature request, plugin management
            3 posts by 2 authors in: Forums > CMS Builder: Plugins & Add-ons
Last Post: Yesterday at 8:24pm   (RSS)          
By kitsguru - October 25
I’d like to suggest a new feature that would bring CMS Builder up to modern standards for plugin and extension handling — something modeled after Piwigo’s excellent plugin management system.
Currently, installing or updating CMSB plugins involves manual file uploads and version tracking, which can become cumbersome as sites grow or as multiple developers manage different environments. A centralized, in-app plugin management interface would significantly streamline workflows, improve security, and encourage more active plugin development within the community.
Proposed Features
In-App Plugin Browser
- Search, install, and update plugins directly from the CMS Builder admin area.
 - Include filters by category, popularity, and last update date.
 - Display plugin metadata (author, description, version, changelog, compatibility).
 
Compatibility and Safety Checks
- Each plugin declares compatible CMSB versions.
 - Show clear warnings if a plugin hasn’t been tested or maintained recently.
 - Option to stage/disable plugins without uninstalling them.
 
Automatic Updates and Rollbacks
- One-click updates from within the admin panel.
 - Retain a last-known-good version for easy rollback if something breaks.
 - Optional update notifications and changelog previews.
 
Sandboxing and Permissions (Future Phase)
- Define plugin capabilities in a manifest (e.g., database access, file writes, external HTTP calls).
 - Allow the admin to review and approve permissions before activation.
 - Longer-term: support isolated plugin runtimes or namespaces.
 
Developer Publishing Interface
- Provide an official plugin repository or registry with submission guidelines.
 - Display “verified developer” badges for trusted authors.
 - Include GitHub/Bitbucket integration for version syncing and issue tracking
 
Benefits
- Ease of maintenance: No more manual FTP uploads or version guessing.
 - Improved security: Centralized verification and optional signing.
 - Community growth: Easier for new developers to share and update plugins.
 - Better UX for admins: Transparent updates and safer testing.
 
Piwigo’s system is a great example of how this can work in practice — it’s lightweight, reliable, and user-friendly. Bringing similar functionality into CMS Builder would modernize plugin management and create a stronger ecosystem around the platform.
Thanks for considering this — happy to help outline technical requirements or testing scenarios if you move forward with it.
yaadev.com
By Dave - Yesterday at 7:23pm
Hi Jeff,
Thanks for the thoughtful write-up and for sticking with CMS Builder all these years. I’ve been away from my desk the last few days, so thanks for your patience.
A built-in plugin management flow like you described would be great. Big features like this can sometimes take a lot of time, though, so we try to work in small usable iterations and ship frequently.
Near-term, the first step is to standardize how plugins store their settings. Right now, many plugins store their own config in the plugin source, which makes upgrading harder. One big step forward we'd like to take is a consistent format: either a simple config file in the plugin folder that the admin can edit in the UI, or storing settings in the database with import and export, would help right away. We're exploring different ways to implement that.
In the medium term, we’re interested in using Composer to distribute CMSB and, potentially, plugins. That would let us add an in-app browser for installing and updating plugins, with version and compatibility checks handled for you. I was also looking into some web-based composer management UI for CMSB. Or perhaps something so users who don't have easy shell access can upload a script and have it download from composer.
Longer term, what you've outlined would be ideal: a central directory with clear metadata, compatibility flags, update notifications, one-click updates, and safe rollbacks. Lots of steps there, so we typically want to start with the first few and proceed from there.
Thanks again for laying this out. If you’re up for it, we're always happy to have your help testing when we add these features to the beta.
interactivetools.com
Great to hear you are considering it. Just for reference piwigi plugins use 3 mehods for storing config, much like you outlined. It depends on the age of the plugin and its complexity.
Some create their own table, some use piwigo’s config table with serialized data, some use php array config.php file.
yaadev.com