Many great podcast apps that allow you to privately keep a collection of favourites already exist. However, there isn't yet a great solution that brings together multiple media types into a single platform for sharing.

What it does

Strawberry uses the iTunes Search and Google Books APIs, to allow you to automatically add information about your favourite content. Unique profile pages are created for each user that can be shared on other social networks, like Twitter or Facebook. Login is through Facebook, meaning there's no need to create an extra account.

How we built it

We build this application as a static site linked to an API. The site handles the rendering of data, and authentication with services like Facebook. The API aggregates information about media and hosts the user's lists.

The API is using the HAPI API framework. It is run on a Google Cloud Compute Engine VM, alongside a MongoDB and Redis database. The search endpoint, which is likely to be under load, is provided as a Google Cloud Function, meaning there is no need to scale server infrastructure.

Challenges we ran into

Since this was a 24 hour hackathon, time was a big challenge! We were able to implement most of the features that we wanted, and this has shown us that the idea is viable. On the other hand, some features are still incomplete. There is currently no way to see your profile page's unique URL, and access your lists. However, the list is fully functional and can be demoed. We also still need to add more management functions, like removing items and changing account details.

Accomplishments that we're proud of

Matthew spent a significant amount of time refining the animations that make the site feel more interactive. This gave the final site a very polished look.

Oliver was able to write a Facebook OAuth implementation within a relatively short period of time.

What we learned

Lots! More about the JavaScript language, about Google and Apple's APIs, and how these link with Node.JS and MongoDB.

What's next for Strawberry

We plan on making Strawberry more robust and production ready, with the intention of releasing the product in the future.

Share this project: