-
Notifications
You must be signed in to change notification settings - Fork 0
[P2] Image proxy / CDN for cover images #20
Copy link
Copy link
Open
Description
Problem
Cover images are stored as direct AniList CDN URLs. If AniList changes CDN domains, rotates URLs, or goes down, every image in the app breaks.
Requirements
- Option A: Proxy endpoint (
GET /api/images/{anilistMediaId}/cover) that fetches and caches the image - Option B: Background job that downloads cover images to blob storage (S3/R2) on anime add
- Serve images via a CDN (Cloudflare/CloudFront) with cache headers
- Fallback placeholder image when the cover is unavailable
Acceptance Criteria
- Cover images are served from a URL the app controls
- AniList CDN outages don't break the app's image display
- Images are cached with appropriate headers (long TTL, immutable)
- Missing images show a themed placeholder
References
- Roadmap §6 — Data Integrity & Edge Cases
Reactions are currently unavailable