This is a personal music web project that I built from scratch and curated entirely myself. I designed the interface, integrated the features, and added all the songs manually. It demonstrates the use of modern web technologies to create a fully responsive, interactive, and visually appealing music website:
- Tailwind CSS v3.3.2 – for utility-first, responsive, and modern styling.
- React 19 + Vite 7 – for component-based UI architecture and fast development/build tooling.
- React Spinners – for a smooth loading indicator while songs are being fetched.
- Amplitude JS 5.3.2 – to integrate a feature-rich music player and seamless audio playback.
- JSONBin – for secure data storage and dynamic content management via API.
- Amazon S3 – for safely storing music and other files in the cloud.
- HTML, CSS & JavaScript – to create the site structure and engaging user interactions.
The result is a fast, user-friendly, and feature-packed music website that showcases my personal work and provides a smooth and enjoyable listening experience.
- Fully responsive and modern design.
- Interactive music player with audio playback.
- React + Vite powered frontend architecture.
- Manually curated music library added by me.
- Secure and dynamic content management via JSONBin.
- Cloud-based file storage with Amazon S3.
- Smooth user experience with HTML, CSS, and JavaScript.
The goal of this project is to create a modern, fast, and user-friendly music website that highlights my personal work and provides an enjoyable listening experience.
- Added support for both
X-Master-KeyandX-Access-KeyAPI flows. - Improved API error reporting with clearer server response messages.
- Fixed song item click playback reliability in the React integration.
- Set initial load behavior to start with the first song in paused state.
- Added playback persistence for active song index and played seconds using localStorage.
- Restored album artwork visibility so it stays visible while music is playing.
- Moved static icon assets (
github.svg,now-playing.svg) to thepublicfolder. - Updated repeat and shuffle controls to work mutually exclusive.
- Added a full-screen
ClipLoaderon startup until all song data is loaded.