Skip to main content

Overview

Paw & Care is available as a web application and native iOS app. This guide covers installation, configuration, and initial setup for both platforms.
Paw & Care is a SaaS platform — no complex server setup required. Simply access the web app or download the iOS app to get started.

Web Application

The web application provides full practice management capabilities, advanced reporting, and administrative controls.

System Requirements

Browser Support

  • Chrome 100+
  • Safari 15+
  • Firefox 100+
  • Edge 100+

Screen Resolution

  • Minimum: 1280px width
  • Recommended: 1920px (Full HD)
  • Responsive on tablets and mobile
Internet Connection Required: The web app requires a stable internet connection for AI features (Whisper transcription, GPT-4 SOAP generation, Retell AI voice calls). Offline mode is available on iOS only.

Access the Web App

1

Navigate to Paw & Care

Open your browser and go to:
https://app.pawandcare.com
Bookmark this URL for quick access. You can also install it as a Progressive Web App (PWA) by clicking “Install” in your browser’s address bar.
2

Create Your Account

Click “Sign Up” and provide:
  • Email address: Your practice email
  • Password: Minimum 12 characters, including uppercase, lowercase, and numbers
  • Practice name: e.g., “Paw & Care Veterinary Clinic”
  • Phone number: For account recovery
Passwords are hashed with bcrypt (cost factor: 12) and all data is encrypted with AES-256 at rest.
3

Verify Your Email

Check your inbox for a verification email from [email protected].Click the verification link to activate your account (link expires in 24 hours).
4

Complete Practice Setup

After logging in, complete your practice profile:
  • Practice Address: Clinic location
  • Business Hours: Operating schedule
  • Veterinarian Details: Lead veterinarian name and license number
  • Specialties: Services offered (wellness, emergency, dental, surgery)
5

Configure User Roles

Add team members and assign roles:
RolePermissions
Practice ManagerFull access to all features, billing, user management
VeterinarianClinical features, SOAP notes, patient records (no billing edits)
TechnicianPatient vitals, appointment notes (view-only medical records)
Front DeskAppointments, client management, call monitoring (no medical access)
Best practice: Start with 2 Practice Managers to ensure administrative access continuity.

Web App Architecture

Paw & Care is built with modern web technologies for performance and reliability:
// Technology Stack
{
  "frontend": {
    "framework": "React 19 + TypeScript",
    "buildTool": "Vite 7.2",
    "styling": "Tailwind CSS 3.4",
    "components": "Radix UI + shadcn/ui",
    "charts": "Recharts 2.15"
  },
  "backend": {
    "database": "Supabase (PostgreSQL)",
    "auth": "Supabase Auth (JWT)",
    "storage": "Supabase Storage (S3-compatible)",
    "realtime": "Supabase Realtime (WebSockets)"
  },
  "ai": {
    "voiceAssistant": "Retell AI SDK 2.0",
    "transcription": "OpenAI Whisper",
    "soapGeneration": "OpenAI GPT-4 Turbo",
    "insights": "OpenAI GPT-4"
  }
}

Environment Configuration (Self-Hosted)

For Development/Self-Hosted Only: Production users should use the hosted web app at app.pawandcare.com.
If you’re running Paw & Care locally for development:
1

Clone the Repository

git clone https://github.com/pawandcare/vetassist-ai.git
cd vetassist-ai
2

Install Dependencies

npm install
This installs:
  • React and React DOM
  • TypeScript compiler
  • Vite development server
  • Supabase client library
  • OpenAI SDK
  • Retell AI SDK
  • UI components (Radix UI, shadcn)
3

Configure Environment Variables

Create a .env file in the project root:
# Supabase Configuration
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-key

# API Configuration
VITE_API_URL=http://localhost:3000

# OpenAI API (for SOAP generation)
OPENAI_API_KEY=sk-...

# Retell AI (for voice assistant)
RETELL_API_KEY=your-retell-key
Get Supabase credentials:
  1. Create a project at supabase.com
  2. Go to Settings → API
  3. Copy Project URL and anon/public key
4

Set Up Database Schema

Import the database schema to your Supabase project:
-- Core tables
CREATE TABLE pet_owners (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  first_name TEXT NOT NULL,
  last_name TEXT NOT NULL,
  email TEXT,
  phone TEXT,
  address TEXT,
  created_at TIMESTAMP DEFAULT NOW()
);

CREATE TABLE pets (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  owner_id UUID REFERENCES pet_owners(id),
  name TEXT NOT NULL,
  species TEXT NOT NULL,
  breed TEXT,
  age INTEGER,
  weight DECIMAL,
  sex TEXT,
  color TEXT,
  microchip_id TEXT,
  status TEXT DEFAULT 'active',
  created_at TIMESTAMP DEFAULT NOW()
);

CREATE TABLE medical_records (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  pet_id UUID REFERENCES pets(id),
  pet_name TEXT,
  owner_name TEXT,
  vet_name TEXT,
  template_name TEXT,
  record_date DATE,
  status TEXT DEFAULT 'draft',
  soap_subjective TEXT,
  soap_objective TEXT,
  soap_assessment TEXT,
  soap_plan TEXT,
  notes TEXT,
  created_at TIMESTAMP DEFAULT NOW()
);

CREATE TABLE audit_log (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  user_name TEXT,
  action TEXT,
  resource TEXT,
  resource_id TEXT,
  details TEXT,
  timestamp TIMESTAMP DEFAULT NOW()
);
5

Start Development Servers

Run both frontend and backend servers:
# Terminal 1: Frontend
npm run dev

# Terminal 2: Backend (API server for AI features)
npm run dev:server
Or run both concurrently:
npm run dev:all
The app will be available at:
  • Frontend: http://localhost:5173
  • Backend: http://localhost:3000

iOS Mobile App

The native iOS app provides on-the-go clinical documentation with offline support, haptic feedback, and biometric authentication.

System Requirements

iOS Version

  • Minimum: iOS 15.0
  • Recommended: iOS 17.0+

Devices

  • iPhone: 12 and newer
  • iPad: Air, Pro (optimized)

Download from App Store

1

Search for Paw & Care

Open the App Store on your iPhone or iPad.Search for “Paw & Care VetAssist AI”.
2

Download and Install

Tap “Get” to download (app size: ~50 MB).Authenticate with Face ID, Touch ID, or Apple ID password.
3

Launch the App

Tap the Paw & Care icon on your home screen.You’ll see a splash screen with the Paw & Care logo (2-second duration).
4

Sign In or Create Account

  • Existing users: Sign in with your email and password
  • New users: Tap “Create Account” and follow the signup flow
Enable biometric authentication (Face ID/Touch ID) for quick future logins.
5

Grant Permissions

The app will request:
  • Microphone: For voice dictation (required for SOAP generation)
  • Camera: For patient photos (optional)
  • Notifications: For appointment reminders and emergency alerts (recommended)
  • Calendar: To sync appointments with Apple Calendar (optional)
You can adjust these permissions later in Settings → Privacy.
6

Enable Offline Mode

On first launch, the app downloads essential data for offline access:
  • Patient records (up to 100 MB cached)
  • Recent SOAP notes
  • Appointment schedule
Changes made offline are queued and synced when internet is restored.

iOS App Configuration

The iOS app is built with Capacitor 8.1 to provide native functionality:
// capacitor.config.ts
{
  appId: 'com.pawandcare.vetassist',
  appName: 'Paw & Care',
  webDir: 'dist',
  server: {
    androidScheme: 'https'
  },
  plugins: {
    SplashScreen: {
      launchShowDuration: 2000,
      backgroundColor: '#ffffff',
      showSpinner: false
    },
    StatusBar: {
      style: 'LIGHT',
      backgroundColor: '#ffffff'
    },
    Keyboard: {
      resize: 'body',
      resizeOnFullScreen: true
    }
  }
}

Mobile-Specific Features

Offline Mode

Full read access to cached records. Writes are queued and sync when online.

Haptic Feedback

Tactile responses for critical actions (save, delete, emergency alerts).

Face ID / Touch ID

Biometric authentication for secure, password-less login.

Background Recording

Voice dictation continues even when app is minimized.

Camera Integration

Capture pet photos directly in-app with native camera access.

Push Notifications

Real-time alerts for appointments, emergencies, and call transfers.

Building for iOS (Developers)

For Developers Only: End users should download from the App Store.
1

Install Xcode

Download Xcode 15+ from the Mac App Store.
2

Build the App

npm run build:ios
This compiles the React app and syncs assets to the iOS project.
3

Open in Xcode

npm run open:ios
This opens the iOS project in Xcode.
4

Configure Signing

In Xcode:
  1. Select the project in the navigator
  2. Go to Signing & Capabilities
  3. Select your Team (Apple Developer account)
  4. Xcode will automatically create a provisioning profile
5

Run on Simulator or Device

  • Simulator: Select a device (e.g., iPhone 15 Pro) and press ▶️
  • Physical device: Connect via USB and select from device list

Initial Configuration

After installation, complete these setup tasks to optimize your Paw & Care experience.

1. Practice Profile

1

Add Practice Details

Navigate to Settings → Practice Profile:
  • Practice Name: e.g., “Sunny Hills Veterinary Clinic”
  • Address: Full street address (for Google Maps integration)
  • Phone: Main clinic number
  • Website: Practice website URL
  • Logo: Upload a square logo (512x512 px recommended)
2

Set Business Hours

Define your operating schedule:
  • Monday-Friday: 8:00 AM - 7:00 PM
  • Saturday: 9:00 AM - 5:00 PM
  • Sunday: Closed (or custom hours)
These hours determine:
  • When Luna (AI assistant) books appointments
  • After-hours emergency routing
  • Staff scheduling
3

Configure Emergency Contacts

Set up emergency escalation:
  • On-call veterinarian: Mobile number for Luna to call/text
  • Backup contact: Secondary veterinarian
  • Emergency clinic referral: Partner clinic for after-hours emergencies

2. AI Voice Assistant (Luna)

1

Activate Luna

Navigate to Voice Call → Configuration.Toggle “Enable AI Assistant” to activate Luna.
2

Connect Your Phone Number

Integrate Luna with your clinic’s phone system:
3

Configure Emergency Keywords

Add practice-specific emergency triggers:
  • “Bleeding”
  • “Seizure”
  • “Poisoning”
  • “Hit by car”
  • “Difficulty breathing”
  • “Bloat” (for large breed dogs)
When detected, Luna:
  1. Immediately notifies on-call vet (< 5 seconds)
  2. Offers to transfer call
  3. Logs the emergency with high priority
4

Test Call Scenarios

Use the Voice Simulator to test:
  • Routine appointment booking
  • Emergency triage
  • After-hours handling
Review transcripts for accuracy.

3. User Management

1

Invite Team Members

Navigate to Settings → Users → Invite User.Enter:
  • Email: Team member’s email
  • Role: Veterinarian, Technician, Front Desk, or Practice Manager
  • Permissions: Customize access levels
They’ll receive an invitation email with signup link.
2

Set Up Role Permissions

Customize what each role can access:
FeatureVetManagerTechFront Desk
View Records
Edit Records
Finalize Records
BillingViewViewSend Invoice
User Management
AI Configuration

4. Template Setup

1

Review Built-In Templates

Paw & Care includes pre-configured templates:
  • Standard SOAP (default)
  • Specialist SOAP
  • Dental SOAP (Canine)
  • Dental SOAP (Feline)
  • Surgery Report
  • Radiograph Report
  • Tech Appointment Note
  • Callback Note
2

Create Custom Templates

Navigate to Templates → Create Template:
  1. Name: e.g., “Orthopedic Exam”
  2. Sections: Add custom sections beyond standard SOAP
  3. Fields: Define field types (text, number, date, checkbox)
  4. Detail Level: Concise or Detailed
  5. Default: Set as default for specific appointment types
3

Share Templates Across Practice

Enable “Shared Template” to make it available to all users.Only Practice Managers can edit shared templates.

5. Billing Configuration

1

Set Up Fee Schedule

Navigate to Billing → Fee Schedule.Add common services with pricing:
  • Office Visit: $65
  • Blood Work Panel: $120
  • Dental Cleaning: $250
  • Radiograph: $180
  • Surgery: $500+
The AI will reference this schedule when generating billing items.
2

Configure Tax Settings

Set your local sales tax rate (if applicable).Tax is automatically calculated on invoices.
3

Connect Payment Processor (Optional)

Integrate with:
  • Square: For in-person and online payments
  • Stripe: For online invoicing
Navigate to Settings → Integrations to connect.

Performance Optimization

Browser Performance

Clear browser cache regularly if you notice slowdowns. The app caches assets for faster loading.
  • Expected load time: < 2 seconds for dashboard on broadband
  • Search response: < 1 second for 10,000 patient records
  • SOAP generation: 20-30 seconds (depends on OpenAI API)

Mobile App Performance

  • App launch: < 2 seconds (cold start)
  • Offline sync: < 5 seconds for 100 records
  • Battery usage: < 5% per hour of active use
  • Storage: < 200 MB installed size, up to 100 MB cached data

Security Best Practices

Protect Patient Data: Veterinary records may contain sensitive information. Follow these security guidelines.
1

Use Strong Passwords

Require team members to use:
  • Minimum 12 characters
  • Mix of uppercase, lowercase, numbers, symbols
  • No dictionary words or personal info
Enable password change every 90 days in Settings.
2

Enable Two-Factor Authentication

Navigate to Settings → Security → 2FA.Use an authenticator app (Google Authenticator, Authy) for added security.
3

Review Audit Logs

Practice Managers should review Audit Logs weekly:
  • Who accessed which records
  • When records were modified
  • Any unusual activity (e.g., after-hours access)
4

Configure Session Timeout

Set automatic logout after 30 minutes of inactivity.This prevents unauthorized access on shared devices.
5

Restrict Device Access

On iOS, enable Face ID / Touch ID to prevent unauthorized app access if device is lost or stolen.

Data Backup & Recovery

Paw & Care automatically backs up your data to prevent loss.

Automatic Backups

  • Full backup: Every 24 hours
  • Incremental backup: Every 6 hours
  • Transaction logs: Every 30 minutes
  • Retention: 30 days standard, 7 years for medical records
  • Geographic redundancy: 3 different regions

Manual Export

Export your data for external backup:
1

Navigate to Settings → Data Export

Click “Export All Data”.
2

Select Data Types

Choose what to export:
  • ✓ Patient records
  • ✓ Medical records
  • ✓ Appointments
  • ✓ Billing invoices
  • ✓ Audit logs
3

Choose Format

  • CSV: For spreadsheets
  • JSON: For developer use
  • PDF: For archival
4

Download Archive

The export generates a ZIP file containing all selected data.Store securely with encryption.

Next Steps

Quickstart Guide

Create your first patient record and SOAP note in 10 minutes.

Mobile App Guide

Learn iOS-specific features like offline mode and haptic feedback.

API Documentation

Integrate Paw & Care with your existing systems via REST API.

Best Practices

Optimize your workflow with proven veterinary documentation strategies.

Troubleshooting

Check:
  • Internet connection is active
  • Browser is supported (Chrome 100+, Safari 15+, etc.)
  • No VPN/firewall blocking app.pawandcare.com
  • Clear browser cache and cookies
Still not working?: Try incognito/private mode to rule out extensions.
Solutions:
  1. Force quit the app (swipe up from app switcher)
  2. Restart your iPhone/iPad
  3. Update to latest iOS version
  4. Reinstall the app (deletes cached data)
If issue persists, email logs to [email protected].
Verify:
  • VITE_SUPABASE_URL is correct in .env
  • VITE_SUPABASE_ANON_KEY matches your Supabase project
  • Supabase project is active (not paused)
  • Database tables are created (run schema SQL)
Test connection:
import { supabase, isSupabaseConfigured } from './lib/supabase';
console.log('Configured:', isSupabaseConfigured);
Common causes:
  • Backend server not running (npm run dev:server)
  • OPENAI_API_KEY missing or invalid in .env
  • VITE_API_URL incorrect (should be http://localhost:3000)
  • Rate limit exceeded on OpenAI API
Fallback: Use the Type tab to enter notes manually.

Getting Help

Email Support

Live Chat

Available Mon-Fri 9AM-5PM EST

Documentation

Browse the complete docs

Build docs developers (and LLMs) love