Full Stack Components
summary
Demos a reusable combo-box component that bundles UI plus its backend in one file: a resource route with no default export exposing a loader (GET) and optional action, wired to a Downshift combo box, protected by requireUser, backed by Prisma + sqlite, and fetched via useFetcher with full type safety across the network using TypeScript. Shows serialization via fetcher.submit, adds a spinner solved by useSpinDelay, and reuses the component inside an invoices route — it works.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:26Resource routes in Remix
- 2:33Customer combo box demo
- 5:48Protecting API endpoints
- 6:51Search with Prisma
- 8:16UI to backend with useFetcher
- 10:19Imperative queries with downshift
- 12:04Rendering components
- 13:52Loading state with useSpinDelay
- 16:20Packaging for npm
- 16:45Summary








