Client-side JavaScript Framework (Batman.js)
Rebuilding the Shopify Admin: Deleting 28,000 lines of JavaScript to Improve Dev Productivity - Shopify

Rebuilding the Shopify Admin: Deleting 28,000 lines of JavaScript to Improve Dev Productivity - Shopify

10/28/2014

What this post added

This post details the decision to deprecate and replace the in-house JavaScript framework Batman.js. The primary drivers for this decision were performance issues (memory leaks, response time regressions), significant code duplication between client-side and server-side logic, and poor developer onboarding due to the framework's complexity and lack of documentation. The team opted for a new architecture involving ERB views, server-side rendering, Turbolinks, and a custom JavaScript binding system to address these challenges, aiming to improve developer productivity and reduce codebase complexity.

Read the original post ↗