The Client-Side Apocalypse
Imagine building performant, dynamic web applications with pure Scala. With the release of Lift 3.1, you can! Where Scala.js delivers on the promise of pure Scala, Lift 3.1 can deliver the same but without burdening the browser with large code downloads. Unlike with client-side rendering where the application needs a minimum of three round trips to the server before page load is complete, server-side rendering can load pre-rendered HTML immediately. In previous versions of Lift, the developer must hand-write JavaScript or use a framework to achieve dynamic views. Now virtual-DOM diffing has been added to Lift’s powerful, secure framework allowing you to only write enough code to render application state into a page. In this way, you keep your application code purely functional without writing routines that mutate the state of the DOM. Not only is the burden on the browser lighter, but also by only updating the DOM after changes are committed on the server, the user learns to trust the application actually did what the user sees.