State of front-end tooling and infra

๐Ÿค” Why should I care about tooling and infra?

  • The Web is moving fast
  • JavaScript is becoming faster? But how?
  • Et al. apps are becoming faster
  • We should know how to pick tooling
  • Developer experience

๐Ÿคฏ Few Thiiiings

  • JavaScript Runtimes ๐ŸŽ๏ธ
  • Transpilers ๐Ÿ“‘
  • Bundlers ๐Ÿงต
  • Build systems ๐Ÿ”จ
  • Architectures: Micro front-ends, Islands ๐Ÿ๏ธ
  • Vite, React RSC, Next, Remix, Astro, SvelteKit, Qwik ๐Ÿ—ฟ
  • Edge computing ๐Ÿค–

๐Ÿฆ€ Rust

  • Systems programming language - control of low-level primitives
  • Statically typed
  • Memory safe
  • Compiled
  • No garbage collection
  • Different memory management model - ownership and borrow

Go

  • Statically typed
  • Memory safe
  • Garbage collected
  • Concurrent
  • Compiled
  • Efficient
  • Simple syntax
  • Built-in support for testing and benchmarking

๐ŸŽ๏ธ JavaScript Runtimes

๐Ÿ“‘ Transpilers

Transpiler-Architecture.001.jpeg

ref: https://tomassetti.me/how-to-write-a-transpiler/

๐Ÿงต Bundlers

webpack.png

ref: https://webpack.js.org/

๐Ÿ”จ Build Systems

๐Ÿ๏ธ Architectures

๐Ÿ—ฟ Vite, React RSC, Next, Remix, Astro, SvelteKit, Qwik

๐Ÿค– Edge Computing