Frontend integration: current-state export
Depends on: CSV/JSON export of current registry state
Problem
Registry page has no way to trigger the export — a researcher has to already know the export endpoint and its format param exist. No visible entry point.
Proposed fix
Add an Export control to the registry page (button or small dropdown: CSV / JSON). No new state needed — it's a link/anchor to the export endpoint with the right format param, not a client fetch, if the backend sets Content-Disposition: attachment correctly. If it doesn't, fall back to fetch+blob.
Suggested first steps
- Confirm the export endpoint's response headers actually trigger a download in-browser (test manually before writing UI)
- Add Export control near existing search/filter/sort controls on the registry page
- If a plain
<a href> works, that's the entire frontend change — don't build a fetch/blob path unless headers force it
Not in scope
- Exporting the page's current filtered/sorted view — the export ships full unfiltered registry only; filtered export is a future ask on both API and frontend sides
- Any loading state/spinner beyond what a native browser download already gives you
Frontend integration: current-state export
Depends on: CSV/JSON export of current registry state
Problem
Registry page has no way to trigger the export — a researcher has to already know the export endpoint and its format param exist. No visible entry point.
Proposed fix
Add an Export control to the registry page (button or small dropdown: CSV / JSON). No new state needed — it's a link/anchor to the export endpoint with the right format param, not a client fetch, if the backend sets
Content-Disposition: attachmentcorrectly. If it doesn't, fall back to fetch+blob.Suggested first steps
<a href>works, that's the entire frontend change — don't build a fetch/blob path unless headers force itNot in scope