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 an app that ignores children silently break navigation. This Skill provides the conventions, code patterns, and pitfalls for setting up routing correctly the first time. ## Core Features & Use Cases - File-based routing: Turn files in a pages/ directory into routes by convention, including dynamic [id] params, catch-all routes, nested layouts with <Outlet/>, and (auth) protected route groups. - Manual routing: Declare an explicit route table with <Router>, <Routes>, and <Route> for apps that prefer one file of route declarations. - Navigation APIs: Use Link, useNavigate, Navigate, useLocation, and useParams correctly, including query-string parsing with URLSearchParams. - Use Case: When adding a dashboard with protected pages and dynamic user detail screens to a Jac web app, use this Skill to structure pages/, wire main.jac's app(children) export, and avoid the silent route-dropping failure. ## Quick Start Add a multi-page flow with a protected dashboard and a user detail page to my Jac app using file-based routing.