Discord presence overhaul: game profiles, Spotify bar, Lanyard WS
Build & Push / Lint & Build (push) Successful in 1m19s
Build & Push / Build & Push Image (push) Successful in 31s

- Spotify: drop album line, normalize ";" separators to ",", add open-in-Spotify link and live progress bar
- Games: resolve missing artwork via public Discord RPC app icons with placeholder fallback; add in-site game profile modal (IGDB + Steam + ITAD: artwork, details, reviews, prices)
- Proxy game data through same-origin /api/game and /api/discord-app routes, CORS-locked to https://fristy.net
- Lanyard: SSR REST first paint, then live WebSocket with heartbeat, reconnect backoff and polling fallback
- Localize presence UI (tr/en/de): elapsed times, dates, numbers, currency, review labels, game descriptions
- Sort projects by last update, descending
- Slim dark scrollbars, compact Spotify progress bar
This commit is contained in:
fristy committed 2026-09-10 14:36:14 +03:00
1 parent ad943fff8c
commit bcc5662a44
16 files changed
+1888 -43

No files matched your search

+38 -1
View File
@@ -25,7 +25,44 @@
"listening": "Listening To",
"customStatus": "Status",
"noActivity": "Quiet right now... Nothing seems to be going on.",
"profile": "View Profile"
"profile": "View Profile",
"openOnSpotify": "Open on Spotify",
"gameProfile": "Game Profile",
"gameModal": {
"close": "Close",
"developers": "Developers",
"publishers": "Publishers",
"releaseDate": "Release Date",
"platforms": "Platforms",
"links": "Links",
"reviews": "Reviews",
"prices": "Prices",
"bestPrice": "Best Price",
"historyLow": "All-Time Low",
"allPrices": "ITAD",
"openOnDiscord": "Discord Profile",
"openOnSteam": "Steam",
"openOnSteamDb": "SteamDB",
"loading": "Loading game info...",
"loadError": "Couldn't load game info.",
"screenshots": "Screenshots",
"reviewsUnit": "reviews",
"scrollBack": "Back",
"scrollForward": "Forward",
"totalReviews": "Total Reviews",
"steamdbRating": "SteamDB Rating",
"reviewScores": {
"overwhelminglyPositive": "Overwhelmingly Positive",
"veryPositive": "Very Positive",
"positive": "Positive",
"mostlyPositive": "Mostly Positive",
"mixed": "Mixed",
"mostlyNegative": "Mostly Negative",
"negative": "Negative",
"veryNegative": "Very Negative",
"overwhelminglyNegative": "Overwhelmingly Negative"
}
}
},
"projects": {
"title": "Projects",