Skip to content

FAQ

Commonly asked questions about Ripple Router. Click a question to expand its answer.

Does Ripple Router support server-side rendering (SSR)?

Ripple Router is primarily a client-side router. You can render initial HTML on the server but you must hydrate on the client and sync the initial location. There is no built-in SSR-specific API; integration depends on your app framework and build setup.

How do I handle query parameters?

Route elements receive searchParams (if provided). For building URLs, use navigateTo(path, { searchParams }).

Example:

typescript
navigateTo('/search', { 
    searchParams: { 
        q: 'ripple' 
    } 
})

becomes: /search?q=ripple

How are dynamic segments exposed?

Dynamic segments (e.g. /users/:id) are available on params passed as props to the routed component: params.id.

Can I use anchor tags for SEO?

Yes — Link renders semantic anchors. For pre-rendered or server-rendered pages, make sure anchors contain proper href values so crawlers can follow links.

How do I debug route matching?

Inspect src/utils/matchPath.ts. Add console logs or unit tests asserting expected params for sample paths. Writing small unit tests for edge cases (wildcards, trailing slashes) is recommended.