Problem
The dashboard is desktop-first. Mobile widths break table layouts; filters (severity, KEV, EPSS, source) are client-side only on the full vuln list — no saved filter presets, no URL-shareable query state, and limited keyboard/ARIA on dense tables.
Current state
- React + Tailwind; RTL for fa/ar
- Vuln table with sort/filter in memory
- Playwright E2E on desktop viewports
Goals
Out of scope (v1)
- Full design system rewrite
- Native mobile app
Size
M — UI-only; can parallelize with backend work
Problem
The dashboard is desktop-first. Mobile widths break table layouts; filters (severity, KEV, EPSS, source) are client-side only on the full vuln list — no saved filter presets, no URL-shareable query state, and limited keyboard/ARIA on dense tables.
Current state
Goals
<md, sticky filter bar, touch-friendly actionspublished?severity=critical&kev=1sync with React Router search paramsOut of scope (v1)
Size
M — UI-only; can parallelize with backend work