feat: implement photo upload component with EXIF extraction

- Add PhotoUpload component with drag-and-drop interface
- Integrate exifr library for GPS and timestamp extraction
- Implement file validation (type, size)
- Add photo previews with metadata overlay
- Support multiple photo uploads (max 5 files, 5MB each)
- Display GPS indicators and extracted metadata
- Create demo page for testing component
- Satisfies requirements 1.2, 1.3, 1.4, 1.5, 8.3
This commit is contained in:
2025-11-16 16:11:00 +00:00
parent 8f297e1ec4
commit ebdfc797ac
11 changed files with 505 additions and 10 deletions

View File

@@ -4,10 +4,11 @@ This directory contains all React components for the Beach Litter Mapping Platfo
## Structure
Components will be organized by feature:
- `map/` - Map-related components (MapInterface, markers, clusters, etc.)
- `reports/` - Report-related components (ReportForm, ReportDetail, etc.)
- `events/` - Event management components
- `analytics/` - Analytics and dashboard components
- `user/` - User profile and authentication components
- `common/` - Shared/reusable components (buttons, modals, forms, etc.)
Components are organized by feature:
- `auth/` - Authentication components (SignIn, SignUp, ProtectedRoute, UserProfile)
- `layout/` - Layout components (Header, Footer, Navigation)
- `map/` - Map-related components (MapView, MapFilters)
- `report/` - Report-related components (PhotoUpload, ReportForm, ReportDetail)
- `events/` - Event management components (coming soon)
- `analytics/` - Analytics and dashboard components (coming soon)
- `common/` - Shared/reusable components (coming soon)