Web Dashboard Guide
LicenseGuard includes a local FastAPI dashboard launched by default when --cli is not provided.
Start dashboard
licenseguard scan requirements.txt
The CLI opens a browser and starts a local server (typically 127.0.0.1:8000+).
Scan lifecycle
The dashboard is manual-run by design:
- Page opens
- Empty state is shown
- User clicks Run scan
- Loading overlay appears during request
- Status line updates with duration and analyzed package count
- Results panel is shown
Main UI areas
Scan section
- Run scan button starts analysis
- Download JSON and Download CSV stay disabled until a successful scan
- Status line shows: scan duration and analyzed package count
- Hint text points users to CLI for advanced options
Policy section
- In-memory policy inputs for approved/restricted/denied tokens
Apply policyupdates policy state for subsequent scans
Results section
- Empty state shown before first scan
- Summary cards for Approved, Restricted, Denied, Unknown
- Interactive distribution chart (click bars to filter by status)
- Search and status filters
- Split tables for direct and transitive dependencies
- Lazy rendering for large sections with load-more controls
CSV and JSON downloads
- JSON endpoint:
/download - CSV endpoint:
/download/csv - CSV ordering mirrors UI: direct dependencies first, then transitive
Download buttons are disabled until a successful scan populates session result state.
Filtering and sorting behavior
- Search matches package name, license string, and status text
- Status filter narrows rows to a single classification
- Table sort headers toggle ascending and descending ordering
- Filters apply across direct and transitive tables
Policy application flow
In-memory policy controls in the dashboard do not modify files on disk.
When Apply policy is clicked:
- Tokens are split by commas
- Policy payload is posted to
/policy - Policy is retained in server state for subsequent scans
- Next scan uses that in-memory policy unless overridden by query policy path
Error and warning display
- Fatal issues are shown in the error banner
- Non-fatal warnings are shown in warning banner
- Download actions remain disabled after failed scans
Manual scan behavior
Dashboard intentionally does not auto-run on load. Users click Run scan to begin.