Do you want to be the most annoying person in the room? Don't worry, we got you. This small application is here for you whenever you need an airhorn on short notice.
Just go to ham.codes/airhorn and do what you've gotta do.
Development
Code
This is literally just a simple .html file with zero dependencies. it should be fairly straightforward to understand what's going on.
Server Provisioning
Grab a VPS server at any provider you like. I chose Hetzner and a small Ubuntu box.
ssh into the VPS and install Caddy as a systemd service:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list sudo apt update sudo apt install caddy
Create a directory to host static files and tell Caddy to use it as the default directory to serve static files from by changing its config file:
mkdir -p /var/www
vim /var/caddy/Caddyfile
# contents of /var/caddy/Caddyfile
ham.codes {
root * /var/www
file_server
}
Deployment
Upload the files in this repo to your /var/www directory on your target server.
rsync -vz ./index.html deploy@ham.codes:/var/www/airhorn/