Ripple is a music web app built using modern web technologies:
- HTML5
- CSS3 (Tailwind CSS)
- JavaScript (React.js 17 UMD)
It leverages the Saavn API for music data.
The source code for Ripple is available on GitHub:
🔗 Ripple Repository
- Bug Fixes.
- Added Service Worker to Cache static files and to use 'showNotification'.
- Replaced SystemJs with React UMD Build to avoid the initial startup time.
- Replaced JSX with React.createElement (using Babel Browser Standalone without SystemJs would interfere with ES modules).
- Bug Fixes.
- Removed 'setPositionState' of MediaSession due to some interference.
- Bug Fixes.
- Major UI improvement (now Dark Themed).
- Implemented 'setPositionState' of MediaSession.
- Downloaded files includes metadata from now on.
- Added share functionality.
- Added Download functionality.
- Major improvements in UI
- Added Media Session API for better UX
- Pagination for saved tracks
- Improved notification popup
- Minor improvements in API
- Major UI enhancements
- Added Album page
- Added Lyrics support
- UI improvements
- Added Artist page
- UI improvements
- Suggestions on Home page based on saved tracks
- Enhanced Haptic feedback
- Added Search results limit option in Settings
- Integrated haptic feedback for a better experience
- Added Quality Preference setting
- Introduced a new Settings section
- UI improvements
- Updated Home page layout
- Highlighted current playing track in the player
- Added Notification Center
- Disabled scroll-to-refresh
- Direct song playback from search page
- Save songs to Local Storage
- Added Saved Songs page
- Introduced music search
- Added song detail pages with metadata
- Playing support from detail pages
- Enter the song or artist name in the search bar.
- Browse the search results and select a track.
- Click on a song from the search results or details page.
- The player will load and start streaming the selected track.
- Click on the download button in the expanded player.
- Grant the permission to read/write a specific folder to save the music files.
- Use the Save button to store a song in Local Storage.
- Access saved songs from the Saved section.
- Configure audio quality preferences.
- Set a limit on search results for optimized performance.
Ripple integrates with the Saavn API API to fetch music data.
Developers can refer to the official API documentation for further customization.
- Local Playlist creation and management
For any issues or feature requests, please submit an issue on GitHub. 🚀
Note: All updates are being pushed to the main branch.