The last few weeks were spent on updating my internal tooling and infrastructure. This fixed general decay, used newer/better ways of doing things, and fixed some of the parts that had broken down (preventing me from releasing updates).
I’ve open-sourced most of the things (tools, as well as most of FindStarlink’s code):
Upgrading CI across projects
Using GitHub Actions Wizard, I upgraded and standardized CI across all my projects. Now every repo has automated deploy workflows on git push
, replacing manual deployment scripts and environment setup. This reduces the cognitive pressure for me when I return to these projects, since I don’t update these projects often.
Splitting FindStarlink monorepo
FindStarlink’s old monorepo was split into focused repos: website, Android app, iOS app, api, cities-db, sat-timings, and ops dashboard. Each has its own CI, making code changes and deployments cleaner and more maintainable.
Migrated to Cloudflare Pages
Moved FindStarlink’s website to Cloudflare Pages, reducing unnecessary ops costs.
Rewrote periodic jobs with GitHub Actions
FindStarlink’s periodic Lambda functions were rewritten as GitHub Actions cron jobs. This simplified the architecture - no AWS overhead (orchestrating Lambda, IAM, Cloudwatch Events, S3), just GitHub-native scheduled workflows.
Ops dashboard migration
The FindStarlink operations dashboard now runs on Cloudflare Pages with Pages Functions. This simplified the design, cut infrastructure overhead, and keeps everything in one place.
This also gave me a chance to play with the /functions
developer-experience of Cloudflare Pages (reminds me of cgi-bin
). It’s straightforward, it just works, and this is how it should be!