All integrations are proxied through /api/activity.
This protects API keys from client exposure and centralizes diverse
data structures into a unified schema.
Hybrid Caching
LIVE (30s):Last.fm, Trakt.tv
STATIC (5m):GitHub, WakaTime
A multi-tier caching strategy balances real-time accuracy with
extreme rate-limit protection.
Data Aggregation
Concurrent fetching via Promise.allSettled ensures one slow
API doesn't block the entire sync process.