DEV Community

Guillaume Sere
Guillaume Sere

Posted on

World Radio 60 : explorer les radios du monde entier depuis votre navigateur 🎧🌍

J’ai rĂ©cemment terminĂ© un projet personnel que je voulais partager : World Radio 60, un site web qui permet d’écouter et de dĂ©couvrir des radios du monde entier, avec une interface simple et intuitive.

Pourquoi ce projet ?

Je voulais crĂ©er une plateforme oĂč l’utilisateur peut :

  • parcourir les radios par pays et voir le drapeau correspondant ;

  • filtrer par ville, pays ou nom de radio ;

  • Ă©couter un flux audio en direct directement depuis le site ;

  • bĂ©nĂ©ficier d’une navigation fluide et rapide, mĂȘme avec des centaines de radios.

Stack et choix techniques

Pour ce projet, j’ai utilisĂ©:

  • Next.js 13 (App Router) pour le rendu cĂŽtĂ© serveur et la gĂ©nĂ©ration de pages dynamiques.

  • React pour construire une interface rĂ©active et interactive.

  • TypeScript pour plus de sĂ©curitĂ© sur les types et Ă©viter les erreurs courantes.

  • API interne pour contourner les problĂšmes de CORS et rĂ©cupĂ©rer les flux des radios.

  • Tailwind CSS pour un style moderne, responsive et rapide Ă  mettre en place.

Comment ça fonctionne ?

  1. Le site rĂ©cupĂšre les lieux (places) depuis l’API Radio.Garden.

  2. Les lieux sont regroupés par pays, avec une limite de villes pour optimiser les performances.

  3. Pour chaque lieu, les channels sont récupérés via un endpoint interne Next.js.

  4. L’utilisateur peut filtrer les radios par pays ou rechercher une station spĂ©cifique.

  5. Un lecteur audio permet d’écouter le flux en direct.

Optimisations

🔒 Verrou anti-double fetch pour Ă©viter les requĂȘtes infinies en React Strict Mode.

⚡ Lazy loading et limites par pays pour rĂ©duire le temps de chargement.

✅ Gestion des erreurs et fallback pour les flux indisponibles.

Résultat

World Radio 60 est maintenant en ligne et permet de parcourir facilement les radios de tous les continents, tout en offrant une interface simple et rapide.

🌐 DĂ©couvrez-le ici : https://world-radio-60.vercel.app/

Top comments (0)