A system comprising: a database containing: a plurality of interrelated records cooperatively defining a hierarchical arrangement of components of a web page, including references to underlying scripts interpretable to define structure and operation of the components of the web page, and a plurality of interrelated records cooperatively defining data-bindings between the components of the web page, wherein the underlying scripts expose application programming interfaces (API's) of the components of the web page, and wherein the underlying scripts are swappable while maintaining the exposed API's; and a web server application executing on a computing device and configured to: receive, from a client device, a request for the web page, swap the underlying scripts of the components of the web page, and responsive to the request, (i) query the database to ascertain a component tree-structure representing the hierarchical arrangement of the components of the web page and to ascertain the data-bindings between the components of the web page, (ii) based on the ascertained component tree-structure and data-bindings, construct a markup document that represents the ascertained component tree-structure and data-bindings and includes a component loader operative to load the swapped underlying scripts, and (iii) output the constructed markup document for rendering by a web browser executing on the client device. a database containing: a plurality of interrelated records cooperatively defining a hierarchical arrangement of components of a web page, including references to underlying scripts interpretable to define structure and operation of the components of the web page, and a plurality of interrelated records cooperatively defining data-bindings between the components of the web page, wherein the underlying scripts expose application programming interfaces (API's) of the components of the web page, and wherein the underlying scripts are swappable while maintaining the exposed API's; and a web server application executing on a computing device and configured to: receive, from a client device, a request for the web page, swap the underlying scripts of the components of the web page, and responsive to the request, (i) query the database to ascertain a component tree-structure representing the hierarchical arrangement of the components of the web page and to ascertain the data-bindings between the components of the web page, (ii) based on the ascertained component tree-structure and data-bindings, construct a markup document that represents the ascertained component tree-structure and data-bindings and includes a component loader operative to load the swapped underlying scripts, and (iii) output the constructed markup document for rendering by a web browser executing on the client device. receive, from a client device, a request for the web page, swap the underlying scripts of the components of the web page, and responsive to the request, (i) query the database to ascertain a component tree-structure representing the hierarchical arrangement of the components of the web page and to ascertain the data-bindings between the components of the web page, (ii) based on the ascertained component tree-structure and data-bindings, construct a markup document that represents the ascertained component tree-structure and data-bindings and includes a component loader operative to load the swapped underlying scripts, and (iii) output the constructed markup document for rendering by a web browser executing on the client device.