1. A computer-implemented method comprising: receiving, from a remote application server by a browser on a client device, code for a web-based application; running, by the browser, the web-based application using the received code; identifying, by the web-based application, a change to a state of the web-based application; generating, by the web-based application, state data code reflecting the change; communicating, by the web-based application to a desktop application, the state data code; and implementing, by the desktop application, the change to the state of the web-based application by rendering the state data code.