Problem
When a user starts a scan, they see a loading spinner but have no idea which scanner is currently running or how much is left. This is a poor UX, especially for large repos.
Expected behavior
- Show a step-by-step progress bar or phase indicators:
- ✅ SAST (Semgrep) – completed
- 🔄 Dependency scanning (OSV) – in progress
- ⏳ Secret detection (Gitleaks) – pending
- Use backend WebSocket or polling to update phase status.
- When each phase completes, mark it with a checkmark and move to next.
Technical hints
- Backend: Add WebSocket endpoint
/ws/scan/{job_id} or use Server-Sent Events.
- Emit events:
phase_start, phase_end, progress_update.
- Frontend: Use
useEffect with EventSource or WebSocket to update UI.
Labels: enhancement, good first issue, SSoC26
Problem
When a user starts a scan, they see a loading spinner but have no idea which scanner is currently running or how much is left. This is a poor UX, especially for large repos.
Expected behavior
Technical hints
/ws/scan/{job_id}or use Server-Sent Events.phase_start,phase_end,progress_update.useEffectwith EventSource or WebSocket to update UI.Labels:
enhancement,good first issue,SSoC26