← back case study

desktop · tooling · devops-lite

Bomb Launcher Aug 2026

I built this so I don’t have to open two Terminal windows every time. One app starts the Minecraft server, connects playit, and shows a live console with start/stop.

Python Tkinter bash / zsh Java Minecraft server playit (Rust) macOS app bundle

// before → after

two terminals vs one click

Before
8+ steps
Two Terminal windows, every time
  1. open Terminal window 1
  2. cd into the server folder
  3. find / set Java, run server.jar
  4. open Terminal window 2
  5. start playitd
  6. start the playit client
  7. connect the agent to the tunnel
  8. monitor both panes so nothing fails
After
2 steps
One app
  1. open Bomb Launcher
  2. press Start

// demo

walkthrough

Demo video coming soon Screen recording: Start → world online → playit tunnel → Stop.

// how it works

how it works

// stack

languages · tools

// concepts

Concepts applied

Start button

Process management

Start launches Java, then playitd, then the client, in order. Stop shuts the whole stack down so orphaned processes don’t stick around.

playit agent

Tunnel setup

Once the server is listening locally, the scripts attach playit so friends can join without manual router port forwarding.

console panel

Log streaming

Server and playit output stream into the UI. Joins, leaves, and errors are color-coded so issues are easy to spot.

Minecraft Bomb.app

Desktop packaging

Bundled the scripts, icons, and Python UI into a macOS app so I don’t have to remember paths or flags.