Jounce is a streaming music radio service implemented in React-on-Rails and deployed to production via use of NGINX, AWS and Docker.
Explore and listen at jounce.se
From the dashboard, users can listen to and discover their new favorite songs, all in one location.
- Follow your friends - see which song they've listened to most recently
- Loop through playlists or individual tracks
- Use the optional shuffle mode
- Form playlists of your favorite songs
- Search for your favorite songs, playlists, and friends from the convenient search bar at the top of the console
- Seek through a song or change your listening volume using the special purpose bars at the bottom of the console
- Click through the special viewing pages for albums, artists, and playlists
- Store your favorite albums, artists, and songs and access them through the handy navbar on the left of the console
- Background client-side daemon is used to handle user requests and song progress
- React's virtual DOM allows for lightning-quick rerendering without requiring new pages to be sent from the server. Modals appear/disappear using React rather than toggling CSS display properties.
- Back end structure is RESTful and all the data requests use AJAX and are fulfilled with a JSON API.
Jounce operates under a two-tier subscriber model.
- Freemium users are exposed to sponsored advertisements, which occur in between song plays
- Premium users are charged a monthly subscription fee to forgo these commercial interruptions
- Jounce uses Stripe to securely handle customer transactions without the dangers of storing sensitive customer information in Jounce's AWS RDS database.
- Users accounts can be connected directly to Facebook