- Fix catch blocks with inline comments that broke parsing
- Remove unused Edit3 import from ClientReferrals
- Add eslint-disable for set-state-in-effect (intentional fetch-on-mount pattern)
- Fix 'e' is of type 'unknown' errors with instanceof checks
- ClientDocuments tab with drag-and-drop upload, category filter, download/delete
- ClientGoals tab with progress bars, status badges, add/edit/complete
- ClientReferrals tab with given/received views, client search, status management
- Dashboard widgets: goals overview and referral leaderboard
- API client methods for all new endpoints
Brave and other privacy-focused browsers block third-party cookies.
Instead of cross-domain requests from app.thenetwork to api.thenetwork,
nginx now proxies /api/* to the backend, making everything same-origin.
- New Engagement page with score cards, distribution summary, sort/filter controls
- Score breakdown bars (recency, interactions, emails, events, notes)
- Engagement badge widget on ClientDetailPage with click-to-expand details
- Added Engagement to sidebar navigation with Zap icon
- API client methods for engagement scoring and stats overview
- AuditLogPage: filterable table with expandable details (admin only)
- MeetingPrepModal: AI-generated meeting briefs with health score, talking points, conversation starters
- Communication Style section in Settings: tone, greeting, signoff, writing samples, avoid words
- ErrorBoundary wrapping all page routes with Try Again button
- Global toast system with API error interceptor (401/403/500)
- ToastContainer with success/error/warning/info variants
- Print CSS for meeting prep
- Audit Log added to sidebar nav for admins
- All 80 frontend tests pass, clean build
- Pipeline/kanban view on Clients page (toggle grid/pipeline)
- Pipeline summary bar showing client distribution across stages
- Stage badge on client cards and detail page (click to cycle)
- Notes tab on ClientDetailPage with add/edit/pin/delete
- StageBadge component with color-coded labels
- Stage selector in ClientForm
- API client methods for notes CRUD
- Global Command Palette: Ctrl+K search across clients, pages, and actions
- Arrow key navigation, grouped results (Pages/Clients/Actions)
- Keyboard hints in footer
- Dark mode: full theme toggle (light/dark/system) with localStorage
- Theme toggle in header bar
- Dark mode applied to Layout, Dashboard, Clients, ClientDetail, Login, Modal
- Tailwind v4 @custom-variant for class-based dark mode
- Pinned/Favorite clients: star clients for quick dashboard access
- Pin button on client detail page and dashboard recent clients
- Pinned clients grid on dashboard
- Uses localStorage (no backend changes needed)
- Search bar trigger in header with ⌘K shortcut hint
- Reports page with overview stats, client growth chart, email activity chart
- Engagement breakdown (engaged/warm/cooling/cold) with stacked bar
- Industry and tag distribution charts
- At-risk client lists (cold + cooling)
- CSV export button downloads all clients
- Notification bell in top bar: overdue events, upcoming events, stale clients, pending drafts
- Dismissable notifications with priority indicators
- Added Reports to sidebar nav between Network and Settings
- Click user row to open detail panel instead of inline icons
- Panel shows user info, role toggle (User/Admin buttons), password reset, and delete
- Cleaner UX: all user management in one place