What problem does it solve? Building multi-page Jac client applications requires choosing and correctly wiring a routing system, and common mistakes like mixing file-based routing with a manual Router or exporting the wrong app shape silently break navigation. ## Core Features & Use Cases - File-based routing: Files in a pages/ directory become routes by convention, with [id] dynamic params, route groups like (auth)/ for automatic protection, nested layouts via <Outlet/>, and catch-all 404 pages. - Manual routing: An explicit <Router>/<Routes> route table for apps that prefer one file of route declarations, with components kept outside pages/. - Navigation APIs: Covers <Link>, useNavigate, <Navigate>, useParams, useLocation, and query-string parsing with URLSearchParams. - Use Case: Add a protected /dashboard section with a shared layout and a /users/:id detail page to a Jac web app, including the correct main.jac app(children) export so routes actually render. ## Quick Start Add a pages directory with index.jac and about.jac routes to my Jac app and update main.jac to export an app that renders the router children.