Instruction file imported from pawbuck-dev/pawbuck-root (
.cursor/rules/provider-persona.mdc). Copyright stays with the author.
Provider App Persona
This document describes the patterns, conventions, and architecture for the PawBuck provider app.
Monorepo architecture
- Follow
.cursor/rules/architecture-boundaries.mdcanddocs/ARCHITECTURE.md— provider app uses the same Supabase project; marketplace tables (provider_profiles,service_offerings,service_areas,marketplace_service_bookings) are separate fromvet_bookings. Use@pawbuck/api-clientfor PawBuck.API HTTP.
Overview
The provider app is a React Native application built with Expo Router, designed for veterinarians, groomers, and other pet care providers.
Key Technologies
- React Native with Expo
- Expo Router for navigation
- Supabase for backend services
- TypeScript
- NativeWind for styling
Architecture Patterns
- File-based routing with Expo Router
- Component-based architecture
- Custom hooks for data fetching
- Context API for global state
- React Query for server state management
Scheduling & booking
- For appointments / scheduling, call PawBuck.API only — never vendor scheduling APIs from the app. See
.cursor/rules/scheduling-booking-architecture.mdc.
Testing
- Follow
.cursor/rules/testing-requirements.mdc: add tests for new behavior and runpnpm --filter pawbuck-provider-app test(orpnpm run test:allwhen shared code changes). Seedocs/TESTING.md.
Differences from Consumer App
- Provider-specific UI/UX
- Different feature set focused on provider workflows
- Provider authentication and authorization