CRAVAB is a growth-focused AI phone receptionist and operations platform for appointment-based service businesses. It answers every inbound call, captures qualified leads, schedules jobs fast, and keeps your team aligned from first contact to completed work.
- Convert missed calls into booked revenue with always-on call coverage
- Deliver a premium customer experience with faster response times
- Cut admin overhead with automation across calls, clients, and appointments
- Keep operations sharp with cleaner data and real-time reporting
- Scale confidently with tenant-safe architecture and secure workflows
- AI-assisted inbound call handling and lead capture
- Appointment booking, updates, and lifecycle tracking
- Customer, service, and follow-up management
- Reporting dashboards for operational visibility
- Multi-tenant safety controls with Supabase RLS
- Vapi-powered voice workflow integration
CRAVAB is a full Progressive Web App (PWA), built for teams in the field and in the office.
- Installable on iPhone (iOS Safari) and Android (Chrome/Edge)
- Works beautifully on mobile and desktop with a responsive UX
- Optimized for touch workflows, quick updates, and day-to-day operations
- Reliable app-like experience for technicians, dispatchers, and managers
Service businesses that run on calls and appointments: plumbing, HVAC, electrical, landscaping, cleaning, detailing, and similar field-service teams.
- Node.js 20+
- npm 10+
- Supabase project
- Vapi account
git clone <repository-url>
cd CRAVAB
npm installWindows PowerShell:
Copy-Item .env.example .env.localmacOS/Linux:
cp .env.example .env.localThen update .env.local with your values.
Minimum required variables:
NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEYMASTER_ENCRYPTION_KEYNEXT_PUBLIC_APP_URLVAPI_WEBHOOK_SECRET
Supabase SQL Editor (hosted path):
- Run
database/schema/full_schema_supabase.sql - Optional demo seed:
database/schema/05_seed_optional.sql
CLI (psql) path:
psql -h <supabase-host> -U postgres -d postgres -f database/schema/00_bootstrap.sqlOptional seed:
psql -h <supabase-host> -U postgres -d postgres -f database/schema/05_seed_optional.sqlnpm run devOpen http://localhost:3000.
npm run validate:env
npm run lint
npm run type-check
npm run buildnpm run dev
npm run lint
npm run type-check
npm run build
npm run test
npm run test:coverage
npm run test:pwa- Next.js App Router frontend and API routes
- Supabase for auth, Postgres, and row-level security
- Vapi integration for AI call tooling
- Multi-tenant isolation enforced in schema and API boundaries
Screenshots below are from the desktop (PC browser) experience.
Canonical schema files in database/schema/:
00_bootstrap.sql01_extensions_and_types.sql02_tables_and_constraints.sql03_indexes_and_views.sql04_functions_triggers_and_rls.sql05_seed_optional.sql(optional)
This project is licensed under GNU Affero General Public License v3.0 (AGPL-3.0).
For commercial use outside AGPL-3.0 obligations, a separate paid commercial license is required.












