Feedback

Components that report system state back to the user: alerts and banners, progress bars, empty states, and full-page error states. Status colour conventions come from Utilities § Status colors.

Alert / Banner

DaisyUI's alert primitive in four status variants. Use sparingly — every alert competes with the page content. BridgeBanner in the workspace is a usage of this pattern (the cross-collection bridge between Inbox and Records).

Records in this collection were last published 2026-03-12.
.alert .alert-info informational message
32 records published. They are now visible in public search.
.alert .alert-success confirmation after a successful action
.alert .alert-warning needs attention — not yet broken
.alert .alert-error action failed or data is invalid

Progress

DaisyUI's progress primitive. Reserved for genuinely measurable progress (file upload, batch operation) — not a stand-in for "loading…". InboxEnrichmentChecklist in the workspace surfaces a domain version of the same idea, tracking enrichment completion across the records in an inbox.

Uploading specimens.csv 60%
<progress class='progress'> determinate — 60% complete

Empty states

Typographic, calm, action-oriented. Never illustrations. Never patronising microcopy.

Get started: download the template

Once you've filled the template from your existing data and uploaded it, your collection appears here.

.empty-state curator empty dashboard

No specimens match your filters.

Try removing one or more filters, or browse all 12 800 published records.

Clear all filters →
.empty-state empty search results

Error states

Calm, informative, museum-register on public surfaces. Semantic HTTP status codes returned by the server.

404 — never existed

No specimen here

The record you're looking for doesn't exist. It may have been moved or never existed.

Search specimens →
HTTP 404 no animated cartoons

410 — withdrawn (PID still valid)

Withdrawal is not deletion. The persistent identifier remains valid; the public view is just unavailable.

This record has been withdrawn

The persistent identifier handle:geoda/specimen/abc123 remains valid but the record is not currently published. Contact Pia Stieger · SCNAT Portal Admin for details.

HTTP 410 Gone PID still resolves