skills/smithery.ai/frontend-dev

frontend-dev

SKILL.md

The frontend uses ra-core (react-admin headless) for data fetching, routing, and CRUD logic, with shadcn-admin-kit and shadcn/ui for the UI layer.

Component architecture

  • Import form inputs (TextInput, SelectInput, ReferenceInput, etc.) from @/components/admin/, not from shadcn/ui directly. The admin layer wraps shadcn with ra-core integration (labels, validation, data binding).
  • Import pure UI components (Card, Button, Badge, Sheet, etc.) from @/components/ui/.
  • Domain configuration (deal stages, note statuses, task types, company sectors) comes from useConfigurationContext(), never hardcoded.

Resource (CRUD) conventions

Each resource follows this file structure (e.g. contacts/):

  • ContactList.tsx — list page (desktop + mobile variants)
  • ContactShow.tsx — detail view
  • ContactEdit.tsx / ContactCreate.tsx — form pages
  • ContactInputs.tsx — shared form fields reused between create and edit
  • index.tsx — exports { list, show, edit, create, recordRepresentation }

Resources are registered in root/CRM.tsx via <Resource name="contacts" {...contacts} />.

Installs
4
First Seen
Mar 20, 2026