HTML-Aware ERB: The Path to Reactive Rendering
summary
Herb provides a real parser and grammar for HTML+ERB, with bindings for Rust/C/WebAssembly/Node/Ruby and an editor LSP that flags invalid HTML, ERB, or Ruby before runtime. An Herb engine compiles ERB into an HTML-aware instruction stream, supports Action View helpers, builds a render graph and reverse dependency index, and enables incremental updates. A dev server uses Herbie diff to hot‑patch views. Benchmarks show compile‑time optimizations up to 20x–150x in some cases; production reactivity primitives are implemented but not fully wired yet.
AI-written summary · about
chapters (11)
- 0:00Introduction and background
- 1:51Introducing Herb parser
- 6:05ERB engines and HTML awareness
- 12:04Reactivity in web applications
- 15:33Building the render graph
- 17:37Tracing state dependencies
- 20:46Resolving helper dependencies
- 22:35Tracking DOM node references
- 24:19Development-time reactivity
- 28:11Compile-time optimizations
- 30:18Conclusion and release
related talks
30mHerb to ReActionView
37mKeynote: Herb to ReActionView: A New Foundation for the View Layer
31mThe Anatomy of an ERB Rendering Engine
34mThe Modern View Layer Rails Deserves: A Vision for 2025 and Beyond
29mHTMLBars: The Next-Generation of Templating in Ember.js
47mTemplate Engines in Ruby
31mPercy: Isomorphic Web Apps with Rust + WebAssembly
43mBending The Curve: Putting Rust in Ruby with Helix
