Sparkle StoriesView website
Sparkle Stories is a streaming audio platform for children's stories available on the web, Android and iOS. I worked on this project when working as a Software Developer at design and technology firm what.it.is. As a part of the 3 person development team, we were tasked with building and maintaining the entire platform on both web and mobile.
My main work for Sparkle Stories came in the form of building the Android application. The app was built using the Ionic framework. My main role on the team was building the entire audio player capabilities of the application. The app had to have these capabilities:
- Volume control
- Time control
- Offline playback
- Play from the last part exited from
- Skip ahead and rewind 15 seconds
- Scroll timer
- Pause and Play
- Play next story in the list
- And much more
All of the code that I wrote was in formatted classes and highly decoupled so that if any changes in Ionic/Angular's API's were made, changes could take place easily. My main challenge was building the 'Scroll Timer' which would enable the user to easily scroll throughout the entire story that was playing. Most of Ionic's API had every 'typical' audio player feature like play, pause, skip ahead certain time. However there were no real methods to keep track of the audio track time and how long the audio file actually was. I had to build out a custom class using ES6 and integrate touch components from Ionic to facilitate the scroll timer and be able to keep track of the audio file. I plan on eventually making a pull request to Ionic's main repository with this feature.