~/talk

Type-Safe URLs

Talkat MadVue 2026 · on Friday, 2026-05-22· [typescript, web-platform]
links:none on file
slides:none on file

Claims a concrete system that makes URL params typed and parsed so pages get numbers, dates or booleans instead of raw strings, implemented as Vue Router Resolvers with param parsers (int, bool, custom) and a build-time generated matcher that moves parsing and sorting to compile time. Demo shows converting ID to number and date params to Date objects, invalid inputs become 404, runtime validation code is removed, bundle size drops ~30% and the router core is ~6KB; demo at https://esm.is/2026-talk-typed-url-demo.

AI-written summary · about

  1. 0:00Introduction and welcome
  2. 1:05Why type-safe URLs matter
  3. 8:24File-based routing setup
  4. 13:17Demo: Product ID as integer
  5. 16:28Demo: Date parsing in events
  6. 20:23Demo: Query params validation
  7. 25:44Path vs query parameter rules
  8. 27:07SEO and URL considerations
  9. 28:08Vue Router 6 availability
  10. 29:54Future of bidirectional validators
  11. 30:15Closing and Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.