FerryDocs
ContributingWeb client

The stack

The dashboard uses React and TypeScript. Each library has one job.

Edit on GitHub
React RouterURL → pageReact pageshadcn/uiTanStack Queryserver stateZustandclient stateferrydthe API

React Router reads the URL and chooses the page.

1 / 4

The parts

PartTools
UI 19, (strict), (Radix primitives, customized in src/components/ui), icons
Style v4, the Ferry in src/styles/tokens.css, light and dark themes
Server state v5 (src/lib/api/queries/*)
Client state (src/stores/auth.ts, src/stores/ui.ts)
Routing v7 with and code-split pages
Build and tests,

A code-split page is a result of : the browser loads its file only when you open the page.

On this page