Curi is a JavaScript router for single-page applications

import { curi } from '@curi/router';
import Browser from '@hickory/browser';

const history = Browser();
const routes = [
  { name: 'Home', path: '', ... },
  { name: 'User', path: 'u/:userID', ... },
  // more routes...
  { name: 'Not Found', path: '(.*)', ... }

const router = curi(history, routes);

Curi cares about routing, you choose how you render. Curi currently supports React DOM, React Native, Vue, and Svelte. With a little elbow grease, Curi should work with any UI library.

Ready to learn more? Get started with the creating a router guide.

Want to see Curi in action? The examples section has a variety of demos showing off what you can do with Curi.