~/ ← projects/ filter-dom-url

filter-dom-url

Tiny TypeScript library that keeps form filter controls in sync with URLSearchParams + history.

2025 · by dmytro · shipped · typescriptformsoss

## case study

— problem & approach #case-study

the problem

Filter UIs that change page state but live outside the URL are a UX trap: users can’t share links, can’t refresh without losing context, and back/forward buttons do the wrong thing. Most projects fix this with ad-hoc serialisation glue per page.

the approach

A zero-dependency TypeScript library that takes a list of input/select elements and a config, then keeps them and URLSearchParams two-way synced. Updates push to history cleanly so back/forward replays user intent. Works in any framework or vanilla DOM.

stack

  • TypeScript, no runtime dependencies
  • Vite library build
  • Demo + tests on GitHub Pages
// (c) 2026 symonov · independent dev studio vimgittmuxdocker EOF — end of file —