improved

20x performance improvement for JS bindings

App speed is an obsession within Budibase. While we try to pay attention to performance when adding new functionality, regressions and unoptimized codepaths do happen.

This time around, the opposite has occurred. Whilst delivering a different feature, we discovered an opportunity to optimize performance for JS bindings within the design section.

The change included forking vm-browersify to reduce its resource usage.

The result

When running tests, we used a repeater to display 1000 components, each containing 1 JS binding, and the render time went from 32.8 seconds to 1.4 seconds. This enhancement dramatically improves the performance of JS bindings.