X Integration: Connected!

Continuing work on the X integration.

Took me a lot longer than I expected, but I'm finally done.

While I was testing, I hit the rate limit for the /me endpoint, lol. Too bad, I really wanted to record a video showcase today. Ah well. Here's a photo in the meantime.

After connecting, the username and photo are displayed.

Maybe I could add a simple cache layer to reduce the chance of this happening in production? Something to think about.

Next up, I need to implement token refreshing. Should be pretty simple: a goroutine running indefinitely, checking every few minutes if any of the tokens are close to expiring, then renewing them.

After that, I should probably implement a simple UI for posting to integrated platforms.

Not today though, I'm exhausted.