README.md

Project Documentation

Medicine Hat Amateur Radio Club

I set out to create a modern, user-friendly, and welcoming new website for the members of MHARC (Medicine Hat Amateur Radio Club). The club’s existing site already contains a wealth of valuable information, but after seeing their recent joint event with the Medicine Hat Scouts, I felt inspired to build something fresh that better reflects the energy and importance of the amateur radio community.

My goal was to modernize the design—making it brighter, cleaner, and more inviting—to appeal not just to current members, but to anyone in the community who might be curious about becoming a ham. I aimed for a style that feels light and approachable, while still maintaining a professional, industrial edge that nods to the serious role ham radio plays in emergency communications.

I’ve carried over all the essential content from the original site and added several new, more advanced features. These include the ability to listen to the club’s repeaters live directly on the website (via Icecast integration) and a tool to track the International Space Station (ISS) overhead for optimal local contact opportunities.

A great-looking website is only valuable if it stays current and useful. That’s why I built the entire site on WordPress, making every section fully editable by the executive team. Any authorized member can easily log in to post news, update repeater information, manage supporters, and more. I’m currently developing a new photo gallery section as well.

I didn’t build this website for profit. I created it as a way to give back to the amateur radio community. It cost me nothing to develop, and it costs nothing to keep online. I’m committed to keeping the live repeater streams running full-time, and I’m now looking into purchasing better equipment to significantly improve the audio quality.

Tech Stack

  • Deno Fresh
  • Upstash Redis (caching)
  • WordPress + ACF + Form 7
  • Tailscale

Features

  • Icecast repeater streaming (custom web player)
  • Telnet DXCluster (Alberta-only realtime reports)
  • Local ISS tracking
  • AERS emergency alerts
  • OpenWeather realtime data
  • irlp.net stats (cached)

Fully editable via WordPress admin.

Repeaters also available via Broadcastify.

Repeater Streaming

Dedicated home VPS with RTL-SDR + dipole antenna runs Docker:

  • Icecast 2
  • Airband v5
  • Tailscale

Airband → Icecast + Broadcastify.
Tailscale encrypts traffic via Seattle proxy VPS.

Docker files in /docker/sdrradio.

Hosting

  • Frontend: Deno Deploy
  • Backend: WordPress (Racknerd)
  • Icecast: local (or any VPS)

Why Icecast instead of Broadcastify only?

Full control over player and audio. Avoids exposing credentials in Broadcastify API URLs.

DX Data

Telnet to Calgary DXCluster, filtered for Alberta.
Hosted via ian.rocks. Code in /docker/dxtelnet.

Future

  • Cloudflare Tunnels for WordPress admin
  • APRS.fi data
  • AllStar node integration
  • Proper Photo Gallery, that can be updated.