All projectsFullstack

Aroui Radio (خرافات العروي)

Arabic RTL archive navigated by a radio tuning dial

aroui.vercel.app
Aroui Radio (خرافات العروي)

An archive of the Tunisian radio storyteller Abdelaziz El Aroui's خرافات, where every published episode is a station on a vintage tuning dial. I built it on Next.js 15 and Prisma with PostgreSQL, serving audio as presigned URLs straight from S3-compatible storage so range requests and seeking never pass through the app. I wrote the RTL interface, the dial and player, an admin for uploads that reads duration server-side, an SSE listener count, and a Web Audio ambience engine that synthesises rain and radio hiss without shipping any audio files.

What it does

  • Draggable tuning dial with keyboard support
  • Presigned direct-to-storage audio uploads
  • Server-side duration parsing on upload
  • Shareable deep links with Arabic OG cards
  • Synthesised Web Audio ambience layers
  • Play analytics from anonymous sessions
  • SSE live listener presence count

Built with

  • Next.js
  • TypeScript
  • PostgreSQL
  • Prisma
  • Tailwind
  • Cloudflare R2
  • Auth.js