ufbr
August 8, 2026 ยท View on GitHub
Universal File-Based Router - A framework-agnostic file-based routing solution for modern web applications.
ufbr automatically generates routes from your file structure, eliminating the need for manual route configuration. Perfect for building single-page applications with intuitive file organization.
Features
- ๐ File-Based Routing - Routes automatically generated from your file structure
- โก Sync & Async Components - Support for both synchronous and asynchronous component loading
- ๐ Nested Routes - Build hierarchical route structures effortlessly
- ๐ฏ Dynamic Routes - Create parameterized routes with
[param]syntax - ๐จ Framework Agnostic - Works with Preact, Solid, Ziko, Vue, and more
Installation
npm install ufbr
Quick Start
Basic Usage
import { createFileBasedRouter } from 'ufbr/[FRAMEWORK]'
createFileBasedRouter({
pages: import.meta.glob('./pages/**/*.[jsx,js]'),
target: document.body
})
Demos
| Tech | Stackblitz Link |
|---|---|
| Van | |
| Preact | |
| Solid | |
| Vue | |
| Svelte |
API
createFileBasedRouter(options)
Options:
pages(object) - Result ofimport.meta.glob()pattern with all page componentstarget(Element) - DOM element where the router will render components
File Structure Example
pages/
โโโ index.[extension] โ /
โโโ about.[extension] โ /about
โโโ blog/
โ โโโ index.[extension] โ /blog
โ โโโ [id].[extension] โ /blog/:id
โโโ user/
โโโ [name].[extension] โ /user/:name
License
MIT