Monkey SMP
A whitelisted, modded Minecraft Java factions server I run, with a one-command installer for every platform, a live world map, and pull-based deploys that update the server overnight after a backup.

The constraint
A modded server is only as good as the number of players who manage to join it. Every client needs the exact same mod versions, nobody wants to read a setup guide, and the person running it does not want to SSH in every time a mod updates.
The approach
Pin every mod by hash in one manifest and download it from its original source, so nothing is redistributed and nothing drifts. One installer, run through a pinned PowerShell 7, installs the matching client on Windows, macOS and Linux. The server pulls its own releases: it polls for new tags and deploys in a 4 AM window, after a backup and an in-game warning.
- 1Verify, don't redistribute
Every mod is downloaded from its own author's host and checked against a hash pinned in the manifest. The pack never ships anyone else's jar.
- 2One installer, every platform
Rather than three scripts that drift, the installer runs on a pinned PowerShell 7 everywhere, so a fix lands on every platform at once.
- 3Pull, don't push
The server watches for tagged releases and deploys itself overnight, after a backup and a warning in chat. Shipping a release is tagging it.
- 4Rehearse the release
Releases go through a rehearsal before they are tagged, and a consolidation pass after v2.7.0 simplified the architecture they ship.
Outcomes
- Moved from Paper to Fabric in v2.0.0
- One installer for Windows, macOS, Linux and Docker
- An HTTPS world map, clipped to the world border, at map.monkeysmp.lscaturchio.xyz
- Traced server lag to a permissions mod and removed it in v2.7.0
- Season I: Saturday 7 November 2026
- Publish the client pack on Modrinth once its review allows it.
Built and run a whitelisted, modded Minecraft Java server on Fabric, with hash-pinned mods, a cross-platform installer and a live HTTPS world map.
Automated deploys as a pull: the server polls for tagged releases and updates itself in an overnight window after a backup.
Related projects
- Read
Cocoon
A privacy-first Chrome extension that lowers sensory load online: it softens algorithmic feeds, reduces motion, and keeps a grounding exercise one click away. No accounts, no analytics, nothing leaves the device.
- Read
unlinkd
Get yourself removed from the internet — and keep the proof. A local-first, fully encrypted workspace for data-broker removal requests and the tamper-evident paper trail a GDPR or CCPA escalation actually needs.
- Read
Feedless
Hide the distracting parts of Instagram and Facebook — feeds, Reels, Stories, suggested posts, notification badges. Nineteen independent toggles, zero network requests.