I’ve been back into coding this month, on my own projects and not just for work. The passion isn’t “burning bright” anymore, but I’m working towards reigniting it by finding coding little bits of things doing what I want, etc.
https://jtiong.dev is a bit of a commit msg logging script that I had written and integrated with my local GitLab installation; but as you’ll see if you visit the site – October’s my highest number of commits in recent memory on personal projects.
The reason for the skewed figure is because up until about August 2022, I had most of my projects stored in GitHub. Some part of me still thinks I should keep things in GitHub – but I’m looking into using that as more of a backup style system.
The Code Backup Project
I know GitLab has a “mirror repository” feature – but unfortunately it doesn’t seem to be working very well for me (too fiddly).
So to get around that I’ll be looking at building my own little automated flow:

It’s not an ideal setup – but I think it will work for my needs. Because of how nagging it is, I may well end up writing the automation script entirely in PHP (this way, I can integrate notifications to myself over Discord and other things).
Other Projects
This month though, I also worked on:
- snackpack.gg – integrating it with my Snack Pack discord server which’ll let friends and family login with their Discord accounts, and see private content on the domain (members only areas)
- topdownshooter – my first sort of game project, name is self explanatory, written in Godot Engine, sort of to prove to myself that I can make a game that’s more than just a random prototype. It should have levels, a menu, and be packable as a real release
- Private Broadcasting System – a private broadcasting system for a friend – she’s an online radio DJ and runs a virtual club which people can tune in and listen to/participate in a talkback radio show
All-in-all, it’s pretty cool to get back into doing some tinkering things, and having the time and wherewithal to do them.
I’ve got several servers which I work on, and quite often, this involves running regular cron’d tasks that perform various backups and configuration updates for me at odd schedules (as an example, my Rust server wipes fortnightly, and needs a config update to change the server name to reflect the last date wiped).
To do things like this, I’ve usually just written a script in PHP and run that at a given interval (daily or otherwise). There’s no real reason I chose PHP to write these scripts aside from familiarity with the language, and no doubt the rest could be easily achieved be it through Python, Shell Script or any other language out there.
For now though, PHP serves my needs just fine.
The problem is, I don’t actually keep these scripts backed up anywhere, or organised in any sort of manner!
The age of GitLab
Over the last couple days, I’ve implemented GitLab into my homelab stack (JT-LAB), and will be using it to store most of my code as a “source of truth” and subsequently sync things to GitHub afterwards (depending on the projects of course).
To the Game Servers, Four Branches…
Based off the various server types; specific branches would be used. For now, these would be:
- Rust
- Minecraft
- Factorio
- Satisfactory
Each game would be represented in its own branch, and based off that branch, would deploy a specific set of commands as needed. For the most part, only Minecraft retains itself in persistence, and the rest rely either on a voted wipe, or scheduled wipe paradigm.
To the File Systems, Five Branches…
Then we have servers with actual file resources and assets that I’d like to keep; things like Photos, Design Assets, old code references, etc. These would be:
- Media
- Design
- Research
- Education
- Maintenance
And nine, nine branches were gifted to the Websites
I also run a number of websites for friends and family on a pro-sumer level. I won’t really list these projects, but they do total up to 9! So it all kind of fits the whole LOTR theme I was going for with these titles.
One Repo to Rule them all…
The decision to build everything into one repository to manage all the core backup operations means I have less to track; for a personal system, I think this is fine. Monolithic design probably isn’t the way to go for a much larger operation than mine though!
Announcing…
Cronjobs
So this is the hypothesized project I’d like to build over the next few days; in combination primarily with jtiong.dev which will help track the commits and such that I do. Writing these projects up here as project whitepapers on a more formal basis might help with some resume stuff going forward for my future career 🙂