Skip to main content

Overview

Victoria’s Activity & Notification System keeps your firm informed about what’s happening across all cases in real-time. Know instantly when clients log in, track their progress through the portal, receive alerts for important events, and maintain a complete activity timeline for every case.
Version 1.0 includes real-time client presence tracking, in-app notifications with bell icon, dedicated Activity Center, and per-case activity timelines. Email notifications are configurable per firm.

Key Benefits

Real-Time Client Visibility

See which clients are online and what they’re working on at any moment

Never Miss Important Events

Instant notifications for document uploads, FA submissions, and client activity

Complete Activity Timeline

Every case maintains a detailed audit trail of all client and attorney actions

Configurable Alerts

Firm-level control over email notifications - enable only what you need

Why Activity Tracking Matters


Getting Started

For Firm Users

The Activity & Notification System is automatically enabled for all firm users. Here’s how to access it:
1

Notification Bell

Look for the bell icon in the top navigation bar (right side, next to your profile).
  • Badge shows unread notification count
  • Click to see recent notifications
  • “View all activity” link opens Activity Center
2

Activity Center

Navigate to /activity or click “View all activity” from the notification dropdown.
  • Active Clients Panel: See who’s online right now
  • Notifications Tab: Your personal notification inbox
  • All Activity Tab: Firm-wide activity feed across all cases
3

Case Activity Tab

Open any case workspace and click the Activity tab.
  • Client presence indicator (if currently online)
  • Complete timeline for that specific case
  • Filter by activity type
  • Real-time updates as events occur

Notification Preferences (Firm Admin)

Firm administrators can configure email notifications:
  1. Navigate to Settings → Notifications (coming soon)
  2. Toggle email notifications globally on/off
  3. Enable/disable specific notification types:
    • Client logins
    • Document uploads
    • Financial Affidavit submissions
    • Task completions
    • Client messages
Recommendation: Start with email notifications off, then selectively enable based on firm workflow. Many firms prefer in-app notifications only to avoid inbox overload.

Core Features

Real-Time Client Presence

Victoria tracks when clients are actively using the portal and what they’re doing.
What You See:
  • Client name
  • Current page (Dashboard, Documents, Financial Affidavit, etc.)
  • Current action (Viewing, Uploading, Completing, etc.)
  • Time since last activity
Where It Appears:
  • Activity Center → Active Clients panel (green highlight)
  • Case Activity Tab → Top banner when client is online
  • Notification badge animation
How It Works:
  • Client portal sends heartbeat every 30 seconds
  • Session considered “active” if heartbeat within 5 minutes
  • Automatic detection when client leaves or goes idle
Use Case: If you see a client “stuck” on Financial Affidavit for 30+ minutes, consider reaching out to offer help.

Notification Bell

The notification bell provides instant access to important alerts.
From the dropdown:
  • Click notification: Mark as read + navigate to related case/page
  • X button: Dismiss notification (remove from list)
  • Mark all read: Clear unread count
  • View all activity: Open full Activity Center
Notification Lifecycle:
  1. Created → Unread (blue highlight, counted in badge)
  2. Clicked/Viewed → Read (no highlight, removed from count)
  3. Dismissed → Removed from dropdown (still in database for audit)
Notifications are color-coded by priority:
  • Urgent (red dot): Requires immediate attention
  • High (orange dot): Important, review soon
  • Normal (blue dot): Standard notification
  • Low (gray): Informational only
Priority Examples:
  • Urgent: Client message marked “Emergency”
  • High: Financial Affidavit submitted for review
  • Normal: Document uploaded, task completed
  • Low: Client login, routine activity

Activity Center

The Activity Center (/activity) provides a comprehensive view of firm-wide activity.
Green-highlighted section showing all clients currently online:
  • Animated green dot indicates live presence
  • Shows client name, current page, and activity
  • Click to navigate directly to their case
  • Updates every 30 seconds automatically
Example:

Case Activity Tab

Each case workspace includes a dedicated Activity tab showing the complete timeline.
Visual timeline of all case events:
  • Vertical line connecting events
  • Icons representing activity types
  • Actor badges (Client, Attorney, Victoria, System)
  • Timestamps with full date/time
  • Descriptions of what happened
Timeline Entry Format:
Client Activity Highlight: Activities performed by clients are specially marked with a green “Client Activity” label for easy identification.
Supabase Realtime subscription:
  • New activities appear instantly (no refresh needed)
  • Client presence updates automatically
  • Smooth animation when new items appear
How It Works:
  1. Activity logged to database
  2. Postgres triggers realtime broadcast
  3. Frontend receives via WebSocket
  4. UI updates with animation

Activity Types Reference

Client-Triggered Activities

Triggered: When client accesses the portalLogged Details:
  • Session start time
  • Initial page visited
  • Device/browser info
Notification: Low priority (if enabled)Use Case: Track client engagement patterns, follow up with inactive clients
Triggered: When client uploads a file to the caseLogged Details:
  • Document name and type
  • File size
  • Upload location (which folder)
Notification: Normal priorityUse Case: Immediately review uploaded financials, discovery documents
Triggered: When client completes and submits Financial AffidavitLogged Details:
  • Submission timestamp
  • FA version/draft number
  • Completion percentage
Notification: High priorityUse Case: Review and approve FA before court deadline
Triggered: When client marks an assigned task as doneLogged Details:
  • Task title
  • Time to complete (from assignment)
  • Any notes added
Notification: Normal priorityUse Case: Track client progress, assign next steps
Triggered: When client sends a message to attorneyLogged Details:
  • Message preview
  • Thread context
  • Urgency flag (if set)
Notification: Normal priority (High if marked urgent)Use Case: Respond to client inquiries promptly

System-Generated Activities

Triggered: When a new case is createdLogged Details:
  • Case name and type
  • Assigned attorney
  • Jurisdiction
Triggered: When discovery milestones are reachedLogged Details:
  • Milestone name
  • Completion percentage
  • Items remaining
Triggered: When new client finishes initial setupLogged Details:
  • Onboarding duration
  • Sections completed
  • Initial documents uploaded

Email Notifications

Configuration Options

Email notifications are controlled at the firm level by administrators.
Email notifications are optional. Many firms prefer in-app only notifications to reduce inbox clutter. Enable selectively based on your workflow.
Available Email Toggles:

Email Format

When enabled, emails are sent via Resend with professional formatting:

Client Portal Integration

How Client Presence Works

The client portal automatically tracks presence without any action needed from clients.
1

Login Detected

When a client logs into the portal, a new session is created and the client_login activity is logged.
2

Heartbeat Starts

The portal sends a “heartbeat” signal every 30 seconds containing:
  • Current page (Dashboard, Documents, FA, etc.)
  • Current action (Viewing, Uploading, etc.)
  • Client name
3

Page Changes Tracked

When client navigates to a different page, an immediate heartbeat is sent with the new location.
4

Session Ends

When client closes browser or goes idle for 5+ minutes:
  • Session marked as ended
  • No longer shown in “Active Clients”
  • Total session duration logged

Privacy Considerations

Client Privacy: Presence tracking is designed for firm visibility only. Clients do not see when attorneys are viewing their case, and presence data is not shared with opposing parties.
  • Presence data is firm-isolated (multi-tenant RLS)
  • Clients cannot see their own presence history
  • No location tracking beyond page visited
  • Data retained for audit purposes per firm retention policy

Technical Architecture

Database Schema

Stores all notifications for users:
Indexes:
  • idx_notifications_user_unread - Fast lookup of unread
  • idx_notifications_user_created - Chronological feed
  • idx_notifications_case - Case-specific notifications
  • idx_notifications_firm_created - Firm-wide feed

Row Level Security

All activity data is protected by RLS policies:

Real-Time Subscriptions

Victoria uses Supabase Realtime for instant updates:

Best Practices

Use presence tracking proactively:
  1. Follow up with stuck clients - If you see someone on the FA page for 30+ minutes, send a quick message offering help
  2. Time your communications - Send important messages when you see the client is online for immediate visibility
  3. Track engagement patterns - Clients who haven’t logged in for 7+ days may need a check-in call
  4. Celebrate completions - When you see a client complete their FA, send an encouraging message
Keep notifications actionable:
  1. Process daily - Don’t let notifications pile up; review and dismiss daily
  2. Use filters - Focus on high-priority items (FA submissions, urgent messages)
  3. Mark as read - Click notifications you’ve handled to keep the count accurate
  4. Dismiss old items - Remove notifications you’ve already addressed
Configure emails strategically:
  1. Start with in-app only - Enable emails selectively based on need
  2. Essential emails - FA submissions and urgent client messages are good candidates
  3. Avoid overload - Don’t enable client login emails unless you have very few clients
  4. Daily digest option - Consider enabling digest mode for non-urgent activity (coming soon)
Leverage case activity for better outcomes:
  1. Pre-meeting review - Check recent activity before client calls
  2. Document client participation - Activity timeline proves client engagement for fee disputes
  3. Identify bottlenecks - See where cases are stalling based on activity gaps
  4. Audit trail - Complete record for malpractice defense if ever needed

Troubleshooting

Possible causes:
  1. Not logged in - Notifications require authentication
  2. Wrong user - Notifications are user-specific; check you’re logged into correct account
  3. All dismissed - You may have dismissed all notifications
  4. No new activity - Check Activity Center for overall firm activity
Fix:
  • Click notification bell to refresh
  • Check Activity Center → All Activity tab
  • Contact support if issue persists
Possible causes:
  1. Client not active - Sessions expire after 5 minutes of inactivity
  2. Heartbeat failure - Network issues on client’s device
  3. Different firm - Multi-tenant isolation (correct behavior)
How to verify:
  • Check Activity Center → Active Clients panel
  • Review Case Activity tab for recent “client_login” events
  • Confirm client is actively using the portal
Possible causes:
  1. Email disabled - Check notification preferences
  2. Specific type disabled - Each type has its own toggle
  3. Spam filter - Check client’s spam folder
  4. Invalid email - Verify email address in user profile
Fix:
  • Settings → Notifications → Enable email_enabled
  • Enable specific notification type toggle
  • Check Resend dashboard for delivery status
Possible causes:
  1. New case - No activity logged yet
  2. RLS restriction - May not have access to this case
  3. Loading issue - Click refresh button
Fix:
  • Perform an action on the case (add note, upload doc)
  • Check you have access to this case
  • Click the refresh icon in the Activity tab

Security & Compliance

Data Protection

All activity data is protected by Row Level Security (RLS) and multi-tenant isolation. Activity from one firm is never visible to another firm.
Security Measures:
  • RLS Policies: Database-level access control
  • Firm Isolation: Activity data partitioned by firm_id
  • JWT Authentication: All API calls require valid Clerk token
  • Audit Trail: Complete history preserved for compliance
  • Encryption: Data encrypted at rest and in transit

Retention & Compliance

Compliance Alignment:
  • Bar Ethics: Complete documentation of client interactions
  • SOC 2: Audit logging requirements satisfied
  • GDPR: Activity data included in data export requests

FAQs

No. Activity tracking is designed for firm visibility only. Clients can see their own uploaded documents and submitted forms, but not the detailed activity timeline or presence tracking data.
5 minutes from the last heartbeat. If a client closes their browser or goes idle, they’ll be removed from the “Active Clients” list after 5 minutes.
Yes. You can dismiss all notifications and they won’t return. However, new activities will continue to generate new notifications. To truly disable, contact support about disabling notifications for your account.
Yes. The notification bell and Activity Center work on mobile browsers. Native push notifications are planned for a future release.
Not yet. Currently, notifications are generated for all cases you have access to. Case-specific notification preferences are on the roadmap.
They’re soft-deleted. Dismissed notifications are marked with a dismissed_at timestamp and hidden from the UI, but retained in the database for audit purposes.
Absolutely not. Activity data is strictly isolated by firm. There is no way for one firm to see another firm’s activity, even if they share a case.

Roadmap

Coming Soon:
  • Notification Preferences UI - Self-service configuration in Settings
  • Daily/Weekly Email Digests - Summary emails instead of individual alerts
  • Case-Specific Subscriptions - Watch/unwatch individual cases
  • Mobile Push Notifications - Native alerts on iOS/Android
  • Activity Analytics - Client engagement reports and insights
  • Custom Alert Rules - Create your own notification triggers
  • Slack/Teams Integration - Forward notifications to team chat

Support

Need help with Activity & Notifications? We’re here:
  • Email: support@divorce.law
  • Live Chat: Click support icon in bottom right
  • Office Hours: Monday-Friday, 9am-5pm PT
  • Response Time: Less than 2 hours during business hours
Common Requests:
  • Configure email notification preferences
  • Troubleshoot missing notifications
  • Export activity data for compliance
  • Custom notification rules setup