Skip to content

Components

ComponentFilePurpose
PageShellcomponents/layout/page-shell.tsxRoot layout with sidebar, top bar, and content region
AppSidebarcomponents/layout/sidebar.tsxNetwork selector, domain browsing, grouped profiles, create/edit links, and My Actions entry
TopBarcomponents/layout/top-bar.tsxSearch input, list/map toggle, dev API selector, auth controls, and pending-action bell
ComponentFilePurpose
CardGridcomponents/cards/card-grid.tsxResponsive repeated item grid with loading and empty states
DomainCardcomponents/cards/domain-card.tsxOne schema-backed item card
CardFieldsFromSchemacomponents/cards/card-field.tsxPublic field rendering from JSON Schema
ActionButtoncomponents/cards/action-button.tsxButton for a schema-derived action
ComponentFilePurpose
SchemaFormcomponents/forms/schema-form.tsxRJSF + AJV8 form renderer for item and action schemas
DatePickerWidgetcomponents/forms/custom-widgets/date-picker-widget.tsxCustom date widget for format: "date" fields
ComponentFilePurpose
ActionHandlercomponents/actions/action-handler.tsxOwns action modal state and submit lifecycle
ActionModalcomponents/actions/action-modal.tsxDesktop dialog/mobile drawer for action requirement forms
ActionListcomponents/actions/action-list.tsxInbox/outbox tabs, refresh handling, and empty/error states for My Actions
ActionCardcomponents/actions/action-card.tsxPer-action summary card in the initiated/received lists
ActionStatusUpdatercomponents/actions/action-status-updater.tsxDialog/drawer for status transitions, remarks, and optional event schema data
ComponentFilePurpose
AuthProvidercontexts/auth-context.tsxUser/session/token state
RequireAuthcomponents/auth/require-auth.tsxRoute guard with redirect-to-login behavior
LoginPagepages/auth/login-page.tsxEmail or phone entry, user check, and OTP request
OtpPagepages/auth/otp-page.tsxOTP verification and redirect restoration
OtpInputcomponents/auth/otp-input.tsxOTP entry control
UserMenucomponents/auth/user-menu.tsxSigned-in user and sign-out UI
PageFilePurpose
HomePagepages/home-page.tsxLoads network config, resolves schemas, fetches items, and renders list/map browsing
ProfileFormPagepages/profile-form-page.tsxCreate/edit flow with network-aware schema and geocoding support
MyActionsPagepages/my-actions-page.tsxPolling inbox/outbox screen for initiated and received actions
LoginPagepages/auth/login-page.tsxLogin/signup entry point
OtpPagepages/auth/otp-page.tsxOTP verification step
ComponentFilePurpose
MatchScoreCardcomponents/match-score/match-score-card.tsxWraps DomainCard with match score state and wires the modal
MatchScoreContainercomponents/match-score/match-score-container.tsxStandalone button + modal container for match scores
MatchScoreButtoncomponents/match-score/match-score-button.tsxCalculate / loading / error / score badge trigger
MatchScoreBadgecomponents/match-score/match-score-badge.tsxColored badge showing score percentage with tooltip preview
MatchScoreModalcomponents/match-score/match-score-modal.tsxDetailed score dialog with progress bar, signals, AI reasoning, and actions
ComponentFilePurpose
MapViewcomponents/map/map-container.tsxConverts schema-backed items into map markers
FitBoundscomponents/map/fit-bounds.tsxFits Leaflet viewport to markers
leaflet-providercomponents/map/providers/leaflet-provider.tsxDefault map provider
google-maps-providercomponents/map/providers/google-maps-provider.tsxProvider slot for Google Maps

components/ui/* contains shadcn/Radix primitives: buttons, cards, dialogs, drawers, popovers, selects, sidebar, skeletons, toggles, tooltips, calendar, inputs, labels, and separators.

For a custom product UI, the highest-value reusable components are SchemaForm, DomainCard, CardFieldsFromSchema, ActionHandler, ActionModal, and MapView.