feat:video player, like button, and media fallbacks

Add VideoPlayer and LikeButton components with optimistic UI and /server
endpoints for likes. Update media processor to emit WebP and JPEG
fallbacks, store fallback URLs in the DB (migration + snapshot), add
video placeholder asset, and relax CSP media-src for R2.
This commit is contained in:
2025-10-14 18:31:55 +02:00
parent b4515d1d6a
commit 067e228393
19 changed files with 1252 additions and 233 deletions

View File

@@ -2,6 +2,34 @@
## Oktober 2025
### 14 Oktober 2025 (Maandag) - 8 uren
**Werk uitgevoerd:**
- **Phase 2A & 2C: Modern Media + Social Features**
- Video support met custom VideoPlayer component geïmplementeerd
- WebP image processing met JPEG fallbacks toegevoegd
- Like/unlike systeem met optimistic UI updates
- Database schema uitgebreid met fallback media URLs
- LikeButton component met animaties ontwikkeld
- API endpoints voor like functionality (/api/finds/[findId]/like)
- Media processor uitgebreid voor moderne formaten
- CSP headers bijgewerkt voor video support
- Volledige UI integratie in FindCard en FindPreview componenten
**Commits:** Nog niet gecommit (staged changes)
**Details:**
- Complete video playback systeem met custom controls
- Modern WebP/JPEG image processing pipeline
- Social interaction systeem met real-time like counts
- Enhanced media carousel met video support
- Type-safe interfaces voor alle nieuwe functionaliteit
- Backward compatibility behouden voor bestaande media
---
### 13 Oktober 2025 (Zondag) - 4 uren
**Werk uitgevoerd:**
@@ -210,9 +238,9 @@
## Totaal Overzicht
**Totale geschatte uren:** 47 uren
**Werkdagen:** 8 dagen
**Gemiddelde uren per dag:** 5.9 uur
**Totale geschatte uren:** 55 uren
**Werkdagen:** 9 dagen
**Gemiddelde uren per dag:** 6.1 uur
### Project Milestones:
@@ -224,6 +252,7 @@
6. **7 Okt**: SEO, PWA en performance optimalisaties
7. **10 Okt**: Finds feature en media upload systeem
8. **13 Okt**: API architectuur verbetering
9. **14 Okt**: Modern media support en social interactions
### Hoofdfunctionaliteiten geïmplementeerd:
@@ -242,3 +271,7 @@
- [x] Cloudflare R2 storage integratie
- [x] Signed URLs voor veilige media toegang
- [x] API architectuur verbetering
- [x] Video support met custom VideoPlayer component
- [x] WebP image processing met JPEG fallbacks
- [x] Like/unlike systeem met real-time updates
- [x] Social interactions en animated UI components