← back

rad.typo

derry: 15°C | cpu: 54°C

infrastructure

rad.typo runs on a single-board computer connected to a home internet connection. no cloud, no data centers - just a raspberry pi, ticking gently in derry. at times the site may go down or get slow...
Raspberry Pi 3B+ server running 24/7 in Derry
hardware specifications [ + ]
computer
Raspberry Pi 3B+
cpu
ARM Cortex-A53 1.4GHz quad-core
memory
1GB LPDDR2 SDRAM
storage
32GB microSD (SanDisk Ultra)
power consumption
2.4W idle • 3.8W streaming
software stack [ + ]
operating system
Raspberry Pi OS Lite (Debian 12)
web server
Apache 2.4.62
security
UFW firewall + fail2ban + SSH keys
ssl certificate
Let's Encrypt
dns
DuckDNS dynamic DNS
monitoring
Custom bash scripts + cron jobs
audio streaming
HTML5 native (no proprietary codecs)
frontend
Pure HTML/CSS/JS (no frameworks)
technical decisions [ + ]
Apache vs Nginx
Choice: Apache 2.4.62
Rationale: Apache's .htaccess support makes configuration changes possible without root access. More importantly, Apache handles concurrent connections gracefully within our constraints, and the slight performance difference vs Nginx is negligible at our scale. The extra memory usage (50-100MB) is acceptable within our 1GB limit.
No Database
Choice: Static HTML + JSON APIs
Rationale: Eliminating database reduces attack surface to zero for SQL injection. File-based storage uses less memory and CPU cycles. Stats are generated by bash scripts and served as static JSON - honest, transparent, and resource-efficient.
Monospace Typography
Choice: System monospace fonts only
Rationale: No web font downloads reduces bandwidth usage and load times. Monospace maintains consistent character spacing across all devices.
Real-time vs Cached Data
Choice: 30-second frontend polling of 60-second server updates
Rationale: Balances freshness with Pi resource constraints. CPU temperature changes meaningfully over 30-60 seconds. More frequent updates would waste cycles without meaningful benefit.
design philosophy [ + ]
visible infrastructure:
Users understand the physical reality of their music streaming.
sustainable computing:
0.2kg CO₂/month vs 12kg for traditional hosting. A single LED bulb uses more power than our entire server.
local infrastructure:
Home internet connection, no CDN, no cloud abstraction. Real geographical presence.
inspiration [ + ]