Card · Client Component
UI + interaction; call server actions, no data authority.
Do / Don’t
- Render + handle events; talk to server actions.
- No Prisma, no business rules; props or promises only.
- Keep state UI-only (filters, selection, layout).
Snippet
"use client";
export function ProjectRow({ project }) {
return (<button onClick={() => deleteProject(project.id)}>Delete</button>);
}Study Card · Chapter 02-client-component