Lunar

Lunar

Working

An music streaming web application with features like music playback, song search, playlist creation, and user authentication.

Overview

Lunar is an immersive music streaming web application crafted to deliver seamless audio playback, effortless song search, and personalized playlist creation. It boasts a sleek, minimalist zinc-based user interface optimized for both desktop and mobile experiences.

Features

  • Global Audio Engine: Custom player allowing uninterrupted background playback across different routes.
  • Admin CMS Dashboard: Secure portal for admins to upload tracks and manage media via Firebase.
  • Smart Content Discovery: Real-time search and dynamic recommendations for instant browsing.
  • Responsive, Minimalist UI: A monochromatic dark-mode design fully optimized for mobile touch and desktop panels.

Learnings

  • Global State with Zustand: Mastered lightweight state management to handle audio playback without Redux boilerplate.
  • Data Synchronization: Learned to reliably sync large media uploads in Firebase Storage with a custom backend API.
  • Performance Optimization: Improved React render cycles by keeping high-frequency updates out of the global state.

Challenges I Faced

  • Persistent Playback: Keeping music playing during route changes required completely decoupling the audio element from page-level components.
  • Progress Bar UI Lag: Updating the audio timeline every second caused lag; fixed by using local state and requestAnimationFrame for smooth scrubbing.
Lunar | Harshit Parmar