ComingUp ComingUp
µJS
Mar 7, 2026 Developer Tools

Gallery

µJS

About

I built µJS because I wanted AJAX navigation without the verbosity of HTMX or the overhead of Turbo.It intercepts links and form submissions, fetches pages via AJAX, and swaps fragments of the DOM. Single <script> tag, one call to `mu.init()`. No build step, no dependencies.Key features: patch mode (update multiple fragments in one request), SSE support, DOM morphing via idiomorph, View Transitions, prefetch on hover, polling, and full HTTP verb support on any element.At ~5KB gzipped, it's smaller than HTMX (16KB) and Turbo (25KB), and works with any backend: PHP, Python, Go, Ruby, whatever.Playground: https://mujs.org/playgroundComparison with HTMX and Turbo: https://mujs.org/comparisonAbout the project creation, why and when: https://mujs.org/aboutGitHub: https://github.com/Digicreon/muJSHappy to discuss the project.

Comments (3)

Agustin Vandervort Agustin Vandervort 4 months ago

what about back button support and error handling

Katlyn Wolff Katlyn Wolff 4 months ago

the 5kb trade drops event hooks needed for production htmx setups

Wilson Kiehn Wilson Kiehn 4 months ago

does this preserve focus state and announce dom changes like htmx does