I've been active on omg.lol ("the best internet address that you’ve ever had") for several months now, and have really been enjoying my stay. omg.lol provides a number of delightfully-simple services, and it ties them together with a friendly API.
=> https://home.omg.lol/ omg.lol homepage
=> https://api.omg.lol/ omg.lol API documentation
Last month, I made use of the Pastebin API to power near-realtime weather information on my omg.lol profile page:
=> /gemlog/2024-02-08-weather-profile-lol.gmi (Near) Realtime Weather on profile.lol
Last night, I crafted some quick GitHub Actions workflows to talk to the Now Page and Web endpoints and make updates to those pages with simple git commits.
## Benefits
This brings a few benefits:
* I can make changes without having to log in to the omg.lol dashboard
* I can write updates with an editor like VS Code instead of a tiny frame in a web page
* I'll preserve version-controlled histories of each page in case I break stuff
* And it opens the doors to additional automation capabilities down the road
## Process
I wound up with a pair of actions for each page.
### Fetch Now Page
The first periodically fetches the latest version of the page from the API and commits it to the repo (in case it gets modified outside of git):
This one is triggered by any `git push` with a commit which modifies the `now.md` file.
## Web Updates
I'm handling the web page updates in basically the same way, with the minor adjustment of needing to manage the web content, css, and custom head independently: