Screw

Mar 4th 2025

A little project with Go, Next.js, 0Auth2.0, Nginx, SQLite, WebSocket, FFmpeg, Docker, Grafana and Prometheus.

The audio streams to a Go API via WebSocket connections, where FFmpeg processes each stream in real-time. The processed audio is returned through the same connections and buffered client-side, where it's rendered as a waveform.

Check out the source code here.

Diagram overview of the architecture