I'm considering moving a big project (which has a close due date) from ACF PRO to Metabox, mainly due to ACF JS performance on very complex pages, and the bloat it creates in the database (thumbsup for the serialized data option in metabox).
I've bought metabox to give it a try, and came across one main issue.
One of the feature I need to build is a "pagebuilder".
To achieve this, I created a cloneable group.
Inside the group, the first field is a select, where you can choose between 25 different layouts.
Each layout is a "group" field, which collects all the fields of the layout. Each group his hidden with the conditional logic extension, so that when you select the desired layout in the dropdown, only the relevant field group will be displayed.
Everything is working fine (just a pity that you cannot insert tabs inside a repeatable group ;-), except when you add a lot of layouts.
I've tried in a page with 20 layouts (which is approximately the most complex landing page that will be created in this project), and the backend performance have plummeted.
The DOM loads in 36/38 seconds but for the page to become responsive it takes 50 to 60 seconds, which is kind of a no-no because the editorial team needs to be very productive.
Here's the code: https://ghostbin.com/paste/f5yvo
For now it's just an example that I built to test the performance (so it's basically the same set of fields repeating in each layout), the real one is a bit more complex (and requiring a little more conditional logic).