Server components and design systems

Most component libraries were written before React Server Components existed, so they rarely ship a "use client" directive.

A small client module that re-exports the components you render from the server is enough. Everything is still server-rendered; the directive only decides what hydrates.

Sam Taylor
Put the boundary where the interactivity starts, not where the library starts.
Sam TaylorDesign engineer

Components that take functions, such as icons, accessors and event handlers, need a client wrapper, because functions can't cross the server-to-client boundary.

Back to all posts