Repository navigation
Open
Labels
admin-toolsAdmin interface and management toolsAdmin interface and management toolsenhancementNew feature or requestNew feature or requestpriority:mediumMedium priority - important but not urgentMedium priority - important but not urgentui/uxUser interface and user experience improvementsUser interface and user experience improvements
Description
Description
Add UI components to display external data (reference links, images, occurrence maps) on species pages in the admin interface.
Background
We now have external data from Wikipedia, GBIF, and FishBase stored in the database:
- External reference URLs (
species_external_referencestable) - Images with metadata (
species_imagestable with source/attribution/license) - GBIF occurrence map URLs (stored in references)
Currently this data is not displayed anywhere in the UI.
Proposed Features
1. External Reference Links Section
Display external links grouped by source:
- Wikipedia articles
- GBIF species pages
- FishBase species pages
- GBIF occurrence maps
Location: Species detail page (admin view)
2. Image Gallery with Attribution
- Show all images with source badges
- Display attribution and license info
- Link to original source
- Allow admins to reorder or remove images
- Highlight which images are from external sources vs. user uploads
Location: Species detail page, image management section
3. GBIF Occurrence Map
- Embed or link to GBIF occurrence map
- Show geographic distribution
- Display specimen count
Location: Species detail page (new "Distribution" section)
Implementation Notes
Database Schema (Already Exists)
-- External references
CREATE TABLE species_external_references (
id INTEGER PRIMARY KEY,
group_id INTEGER NOT NULL,
source TEXT NOT NULL, -- 'wikipedia', 'gbif', 'fishbase'
url TEXT NOT NULL,
FOREIGN KEY (group_id) REFERENCES species_groups(id)
);
-- Images with metadata
CREATE TABLE species_images (
id INTEGER PRIMARY KEY,
group_id INTEGER NOT NULL,
image_url TEXT NOT NULL,
source TEXT, -- 'wikipedia', 'gbif', 'fishbase', 'user'
attribution TEXT,
license TEXT,
original_url TEXT, -- External URL before R2 download
FOREIGN KEY (group_id) REFERENCES species_groups(id)
);Routes to Add/Modify
GET /admin/species/:id- Add external data to species detail view- Modify
src/db/species.tsto include getters for external references
UI Components
- External links card (Tailwind + icons)
- Image gallery with source badges
- Occurrence map embed/iframe
Acceptance Criteria
- External reference links displayed on species detail page
- Links grouped by source (Wikipedia, GBIF, FishBase)
- Images show source attribution badges
- GBIF occurrence maps are visible (embedded or linked)
- UI is responsive and matches existing design system
- Works for species with and without external data
Priority
Medium - Enhances admin experience but not critical for functionality.
Related to #240 (External Data Sources Integration)
Metadata
Metadata
Assignees
Labels
admin-toolsAdmin interface and management toolsAdmin interface and management toolsenhancementNew feature or requestNew feature or requestpriority:mediumMedium priority - important but not urgentMedium priority - important but not urgentui/uxUser interface and user experience improvementsUser interface and user experience improvements
Activity