Skip to content

Reports & BI β€” Flutter vs React parity audit ​

Date: 2026-06-09. Authoritative matrix: CROSS_PLATFORM_PARITY.md.

Summary ​

SurfaceStatusNotes
React SPAβœ… FullCustom report authoring, scheduled reports, dense multi-chart layouts
Flutter mobile🟑 Read/analyzeAll 14 staff report routes wired; data-backed charts on KPI/market/leaderboard/HR
Flutter Web🟑 Same as mobileChart density reduced for small viewports (intentional)

Flutter is not missing route coverage β€” gaps are authoring and layout depth, not navigation.

Screen mapping (14 Flutter routes) ​

Flutter routeWeb equivalentParity
/reports/kpi/brokerage/reports/stats, /kpiβœ… KPI cards + 6m closed-deals trend
/reports/leaderboard/leaderboard, /brokerage/reports/leaderboardβœ… Bar chart + ranked list + Excel export
/reports/market/brokerage/reports/marketβœ… MoJ volume trend + top areas (90d)
/reports/hr/brokerage/reports/hrβœ… Headcount + role donut
/reports/agents/brokerage/reports/agentsβœ… Per-agent scorecards
/reports/financial/brokerage/reports/financialβœ… Revenue / AR aging summaries
/reports/builder/brokerage/reports/builder🟑 Read-only saved report list; authoring stays on web
/reports/executive-summary/brokerage/reports/executive🟑 KPI tiles (web adds more chart panels)
/reports/productivity/brokerage/reports/productivityβœ… Agent productivity metrics
/reports/satisfaction/brokerage/reports/satisfactionβœ… CSAT / NPS style dashboard
/reports/sla/slaβœ… SLA breach dashboard
/reports/lead-source/lead-source-roiβœ… Lead-source ROI
/reports/agent-leaderboard/brokerage/reports/agent-leaderboardβœ… Alternate leaderboard view
/brokerage/reports/commissionssameβœ… Commission tracking

Deep-link aliases added in inbound_route_normalizer.dart for market, HR, agent-leaderboard, and leaderboard web paths (2026-06-09).

Intentional web-only (not a Flutter bug) ​

  1. Custom Report Builder authoring β€” drag/drop dimensions, live chart preview.
  2. Scheduled report CRUD β€” email delivery configuration.
  3. Executive summary β€” full multi-panel print layout.

Mobile shows saved reports metadata and links staff back to web for edits (saved_reports_screen.dart header comment).

Automated guards ​

  • test/features/reports/reports_route_parity_test.dart β€” route + web alias table.
  • test/core/navigation/web_routes_parity_test.dart β€” global SPA snapshot parity.
  • Widget smoke coverage noted in docs/QA_FINDINGS.md (all 13 report screens mount).

Remaining follow-ups (post-v1) ​

  • Arabic-locale goldens for KPI + leaderboard charts.
  • Optional: in-app β€œOpen in web builder” CTA on SavedReportsScreen empty state.

Aldilaijan & Khobara Real Estate Platform