Individual packages vs bundled plugin? Feedback wanted!
David here with Kirki. We are currently discussing if it’s worth keeping Kirki as individual packages (that can be built using Composer) – or – if we should switch back to the idea of serving Kirki as a single, standalone plugin.
I would love your thoughts on this in the comments below. Let me go a bit more into detail about both methods.
Individual packages would allow developers to build a version of Kirki (using composer) that contains only the components they need. This would come with a lot of benefits, such as reduced file size.
And while this sounds great on paper, it would apply to only a small portion of Kirki users – those that have bundled Kirki with their theme.
Technically speaking, this should already work, we just haven’t tested it or provided instructions on how to do it as we are not sure if we want to keep this method moving forward.
Working with individual packages is quite a hassle and would make much more sense if the project had more contributors – which it hasn’t.
For the WordPress version, we have to provide a bundled version of Kirki anyways.
Discarding the idea of individual packages will allow us to work on GitHub in a “single place”, which will be much easier to manage on our end.
While I do see the benefits of individual packages, they don’t outweigh the downsides for me personally. They simply slow us down.
Though, before making this decision by myself, I thought I’d reach out and ask the community first. Please share your thoughts & feedback in the comments below.
I’m not a developer. I’m a designer that dabbles in developer activities. I almost never use Composer in my workflow so I can’t really speak to the benefits having Individual packages.
I do however have quite a bit of experience (10+ years) working with WordPress plugins that would be considered frameworks. For example, Advanced Custom Fields started out as individual packages before eventually grouping them into a Pro bundle. What I noticed is that, even though I may not need some of the features in the beginning, I eventually would need them later on. And it’s nice to just have it ready that having to fetch a download of a single package. The same thing goes for MetaBox, they had some many individual packages, like dozens of them. Then they switched to a All-in-One bundle a few years back. Their growth has tripled since then.
Me personally, I prefer the bundle approach.
Bundled package, hands down. I checked out Composer a few years back and never looked at it again. I use WordPress and plugins with just a touch of amateur coding. If I can’t plug it into WordPress, it’s pretty much useless to me. I think I speak for much of the WordPress users.
I’m working mostly with Composer packages (I’m using Bedrock structure a lot plus any other Composer-based solutions for WordPress) plus avoiding plugins as much as possible
Benefit of the plugin is “install and do something” while Composer requires to be installed itself at first (WordPress does not require Composer), and only after install Kirki. So its extra-step not everybody familiar with (I doubt my clients want to deal with it). Plugin is easy to update
When I using Composer I have control over it as a DEVELOPER but not as regular user/client (user may accidentally broke/uninstall something important). Composer package also easy to update but it requires developer involvement via shell. I like Composer package because of deploy – it much easier to track and install required packages on server than deploy whole plugins directory (not sure how to check new plugin was installed or not and if is which one while composer.lock keep tracks of it). Working with package I had issues with assets URL but some built-in filters fixed it
Speaking about building commercial themes I doubt they can be built using Composer as it may fall on users server (again – no Composer). Not sure though
So my point plugin is good for both developer and client while Composer package good only for developer and causes more troubles for client. But I personally prefer Composer 100% 🙂
However if it stops you there are little benefits from having Kirki as independent packages for most users I believe. And I still be able to require plugin from wpackagist via Composer
Definitely bundled package – I don’t have the knowledge to use Composer
Composer is super easy to use, and I’d love the option to only use the fields I need.