Browser Support

Browser Support
Chrome / Edge / Opera / Brave / Yandex (Chromium 105+) full; Navigation API router, View Transitions, precommitHandler guards from Chromium 138
Firefox 101+ full; the router uses the History API path (no Navigation API), guards run before pushState
Safari 16.4+ full; the router uses the History API path, css() needs no fallback
Safari < 16.4 the reactive core, templates, islands, forms and data work; css() needs a fallback

The reactive core, DOM rendering, islands, forms, the cache and routing work in any browser with ES modules. Navigation API, CSS Anchor Positioning, View Transitions, CloseWatcher, Background Sync and CompressionStream are progressive: when a browser lacks one, the same call takes the older path and the behaviour is the same, minus the platform extra (one history entry instead of a pre-commit guard, a keydown listener instead of CloseWatcher). The suite runs in headless Chrome, Firefox and WebKit on every push (CI).

Edit this page on GitHub