Documentation Index Fetch the complete documentation index at: https://docs.renchi.ai/llms.txt
Use this file to discover all available pages before exploring further.
Components Overview
The Renchi AI platform includes 128 React components organized by feature area. All components are built with TypeScript, support dark mode, and follow consistent design patterns.
Design System
UI Primitives Base components: Button, Input, Card, Dialog, Select, Tabs
FormDialog Pattern Standard pattern for all create/edit dialogs with consistent styling
Dark Mode Full dark mode support using Tailwind’s dark: prefix
Accessibility Keyboard navigation, focus management, screen reader support
Component Categories
UI Primitives (20 components)
Foundation components used throughout the application.
Component Description ButtonPrimary, secondary, outline, and ghost variants InputText input with validation states CardContent container with header, body, footer FormDialogStandardized dialog for all forms SelectDropdown selection with search DialogModal overlay with focus trap TabsTab navigation component BadgeStatus indicators and labels SkeletonLoading state placeholders DateRangePickerDate range selection
Agent Configuration (15 components)
Components for configuring AI call agents.
Component Description ConfigureAgentPanelMulti-tab agent configuration interface GeneralTabAgent name, persona, greeting settings VoiceTabVoice model and speech settings BusinessHoursTabOperating hours configuration ServicesTabService offerings and pricing TransferTabCall transfer destinations CallHandlingTabEmergency keywords and behaviors ContextTabKnowledge base and context documents
Settings & Admin (34 components)
Team and organization management.
Component Description OrganizationSettingsMain settings page container TeamSettingsTeam member management InviteMemberDialogSend team invitations StorageSettingsSectionStorage quota management ElevenLabsSettingsElevenLabs API configuration TimeZoneDialogTimezone selection BusinessHoursDialogBusiness hours editor
Conversation & Calls (17 components)
Call detail and history views.
Component Description TranscriptViewerCall transcript display AIAnalysisPanelAI-generated call insights AudioPlayerCall recording playback CustomerInfoCardCustomer details in call view BookingDetailsCardAppointment information ConversationFiltersFilter calls by status, date, etc. JobEditDialogEdit job/ticket details
Dashboard (12 components)
Dashboard views for different user roles.
Component Description MemberDashboardStandard member view AdminDashboardAdmin-level dashboard OwnerDashboardOwner dashboard with full stats JobCardJob/ticket summary card CallSummaryCardRecent call overview
Inbox (8 components)
Call inbox and action management.
Component Description QuickActionsBarPrimary CSR actions (callback, book, transfer, resolve) CallbackDialogSchedule customer callbacks CreateBookingDialogBook appointments TransferDialogTransfer calls to technicians MarkResolvedDialogMark issues as resolved
Customer Management (8 components)
Customer CRUD and history.
Component Description AddCustomerDialogCreate new customer EditCustomerDialogUpdate customer details CustomerNotesEditorEdit customer notes CustomerTagsEditorManage customer tags CustomerCallHistoryView past calls
Key Patterns
All create/edit dialogs use the FormDialog component for consistency:
import { FormDialog , FormField , FormRow , FormSection } from "@/components/ui/form-dialog" ;
< FormDialog
open = { isOpen }
onOpenChange = { setIsOpen }
title = "Add New Customer"
description = "Enter customer details below"
onSubmit = { handleSubmit }
submitLabel = "Create"
isSubmitting = { isLoading }
size = "lg"
>
< FormSection title = "Contact Information" >
< FormRow >
< FormField label = "First Name" required >
< Input value = { firstName } onChange = { ... } />
</ FormField >
< FormField label = "Last Name" required >
< Input value = { lastName } onChange = { ... } />
</ FormField >
</ FormRow >
</ FormSection >
</ FormDialog >
Dark Mode Support
All components include dark mode variants:
// Light and dark mode colors
className = "bg-white dark:bg-zinc-900 border-zinc-200 dark:border-zinc-700"
// Text colors
className = "text-zinc-900 dark:text-zinc-100"
Props Interface Convention
Components follow the [ComponentName]Props naming convention:
interface CustomerCardProps {
customer : Customer ;
onEdit ?: ( id : string ) => void ;
showActions ?: boolean ;
}
export function CustomerCard ({ customer , onEdit , showActions = true } : CustomerCardProps ) {
// ...
}
Styling Standards
Element Light Mode Dark Mode Background bg-whitedark:bg-zinc-900Surface bg-zinc-50dark:bg-zinc-800Border border-zinc-200dark:border-zinc-700Text Primary text-zinc-900dark:text-zinc-100Text Secondary text-zinc-500dark:text-zinc-400
Dependencies
@radix-ui - Dialog, Select, Popover primitives
class-variance-authority - Component variants
lucide-react - Icon library
Tailwind CSS - Utility-first styling
next-themes - Dark mode management