Frontend Development

Concepts

  • Virtual DOM, reconciliation, and VDOM diffing.
  • In VDOM model, UI = fn(state), when states change, UI is re-rendered. It’s straightforward but expensive.

Frameworks

  • Multiple CSS frameworks
  • Legacy MVC Frameworks
  • AJAX and jQuery
  • Angular (October 2010, then v2 in September 2016)
  • React (May 2013) — virtual DOM
  • Vue (February 2014) — virtual DOM but with better perf, Vapor mode is coming.
  • Preact (November 2015) — compatible to React API but smaller and faster
  • Svelte (November 2016) — No virtual DOM, reactivity through compiler
  • Solid.js (April 2018) — No virtual DOM, fine-grained reactivity
  • Alpine.js (November 2019) — sometimes considered a modern alternative for jQuery.
  • HTMX (April 2020) — extending functionalities of HTML itself.
  • Astro (June 2021) — static site generation, strips off JavaScript, “island” design, works with other frameworks.
  • Qwik (September 2021) — “resumable” apps, lazy loading JavaScript
  • Meta frameworks