One day I was walking to class and found my self listening to music yet again, even though I had said many times that I should start listening to podcasts. Instead of getting more self discipline, I decided there must be a way to make listening to podcasts easier.
What it does
Microcast is a new take on podcasting, where instead of 1.5 hours, the clips are around 5-10 minutes.
Microcast allows podcast creators to upload their previously published podcast episodes and easily convert it into shorter clips about specific topics or questions.
On the listener side, they can browse though the app and find good clips to listen to from specific podcast episodes, or just search for a question or topic and find the best and latest clips that they might be interested in.
How We built it
There are two sides of our product, the creator side, and the listener side.
Creators For the creators, there's a web interface that they can use to upload their podcast episodes and easily turn it into shorter clips. Our backend API is written in python/flask and it analyzes the transcript of the episode to find the best suggested clips. On the frontend client, written in React, the creator can modify these clips, and accept or reject them before finally publishing to our platform.
Listeners For the listeners, there's an iOS app that they can use to browse all the clips that have been published on the platform. They are able to search for topics/questions, browse episodes and podcast hosts, and even create playlists.
Challenges We ran into
We had never worked with audio files before so it was quite a technical challenge to figure everything out. (and we're still in the process of figuring some of it out). Many of the web audio APIs in particular were poorly maintained, had bad documentation, or just didn't serve the purpose of online audio editing.
On the design side of things, trying to narrow down the MVP to very few screens was a challenge, but a necessary one– if we wanted to finish building each screen on time, we had to cut corners somehow without sacrificing the UX. Another sub problem that came up was in categorization– since we were essentially splitting up a podcast episode into different microcasts, we had to account for microcasts being the lowest item in the content hierarchy, which is a somewhat different model from regular podcast apps– so we could not easily emulate any one of them.
Accomplishments that We're proud of
We're proud that we were able to get our web client and mobile app to at least an MVP level that showcases the value of the product. We're happy we didn't give up along the way, no matter how difficult the audio APIs and everything else became.
What We learned
We learned that there's a lot of room in the market for good HTML5 Audio Libraries, especially for React. We learned a lot about working with audio files, streaming APIs, file storage, transcript analysis, and even got to listen to a few podcasts throughout the hackathon.
What's next for Microcast
In the near future, we hope to refine our code and solidify the product before reaching out to initial podcast creators.
In the long term, we're trying to change the way that the world interacts with podcasts, and change the way that podcasts are distributed.