Patterns
How prfct components combine to solve recurring product problems — with the reasoning behind every choice.
Components answer “what does this look like?” Patterns answer “what should I use here, and why?” Each pattern is built only from prfct components and follows the same foundations.
FormsLayout, validation timing, error messages and submission.Empty statesFirst use, no results and failed loads.LoadingSkeletons, spinners, progress and optimistic updates.FeedbackChoosing between inline messages, alerts, toasts and dialogs.Destructive actionsUndo, confirmation and placement.Data tablesAlignment, density, sorting, selection and bulk actions.