‹ Back to My Devblog
Tools Backend

A portfolio site full of "Coming Soon" placeholders isn't much of a portfolio. Once the page layouts were in place, the next step was replacing every placeholder with data pulled live from somewhere real: Roblox, the DevForum, and YouTube.

Roblox's own API

Games was the easy one, Roblox's public Games API returns a user's public experiences directly, no authentication needed. Pair that with the thumbnails endpoint for icons and it's a clean, official data source.

The DevForum has no public API

DevForum Posts was trickier. There's no official API, but the DevForum runs on Discourse, and Discourse exposes unofficial JSON endpoints for user activity and categories. Not documented, not guaranteed to stick around, but real and usable.

YouTube without an API key

Same story for the YouTube section: rather than requiring a Google Cloud API key just to list videos, the channel's public RSS feed does the job, resolve the handle to a channel ID once, then read the feed. No key, no quota limits to worry about.

Making it not break

None of these are official, versioned APIs, so all three got the same resilience pattern: retry with backoff on transient failures, an in-memory cache to avoid hammering the source, and a disk-persisted fallback so a redeploy during an outage still shows the last known-good data instead of going blank. Better to show slightly stale real content than nothing at all.