Resonate Mobile App / Player Discussion History

Introduction

The Resonate player development has always been designed and built first an an open source, standards-based progressive web application (PWA) that will run in almost any modern browser in any device format - desktop, phone, or tablet. (See also our Technology Goals and Principles) However, ‘mass consumers’ of streaming services really don’t care about that and expect a silky-smooth native app experience and a presence in ‘the app stores’. Without an ‘app’ we lack credibility as a streaming service for several key artists.

Plans and Barriers

We have always planned and budgeted to develop native ios and android apps, based on the strong, clean design themes of the PWA but a lack of expertise, budget and competing/overriding priorities (eg a back end to build on) got in the way. We also had concerns about the predatory commission on in-store purchases on the ios app store and potential for a ban / dispute.

Workarounds

Meanwhile PWA functionality is great on ios / safari, but unlike Android’s easy ‘Add to Home Screen’ feature, installing a pwa on ios means going to a website, opening the share menu, and scrolling to the “add to home screen” option. Apple doesn’t educate users on this and the user doesn’t know until later that it’s more than a bookmark.

What were the options?

We considered a ‘roadmap’ for this, with a number of stepping stones / alternatives:

  • creating a native app ‘stub’ that has an app store presence, but then invokes the mobile browser and PWA;
  • using a native ‘emulator’ or transcoder/compiler such as Capacitor to support the PWA player code with the minimum of new coding;
  • new mobile app app development using a framework like Cordova
  • native app development from scratch, eg in Swift for ios
  • other ‘app generator’ tools of various types https://www.pwabuilder.com/

We also considered a natively-coded user profiles app for artists and listeners that would integrate closely with an ‘identity wallet’ for Community Credentials

Where are we now?

There are pro’s and con’s to each of these, but by far the biggest obstacles are available skills and financial resources. We now seem to have some renewed mobile developer interest in this (huge thanks!), but we still lack the funds to get this designed and done properly so that it can be maintained. We have a fundraising drive on at the moment and there are specific ‘asks’ in the plans for the funding support to do this:

  1. Front up the new user API with some ‘native mobile first’ user and artist profile building. See if the performance and manageability of Capacitorjs looks good - (proof-of-concept).
  2. Check out capacitor for the player PWA itself using our updated stream2own APIs (to play and playlist)
  3. Consider future extension to include HQ audio or personalised downloads (premium payment) and streaming, integrating with our verifiable credentials app on the device to ‘certify’ the download and secure a community interaction with our community forum plugin. (This could be EU grant funded?)

Summary

Overall @onapoli summed up the debate very nicely:

Resonate has not got enough power right now to influence music listeners’ behaviours in those areas…

(educating users about web apps vs proprietary platforms)

As I see it, trying to do so at this moment would limit growth opportunities. Having a mobile app alone doesn’t necessarily increase a digital service’s user base, but when someone considers switching or subscribing to a new digital service, having one counts.

Other Resources:

https://www.pwabuilder.com/

Made this a wiki post - feel free to add material / insights

1 Like

Hi Nick,

I just wanted to say I really appreciate the Technology Goals and Principles. They are one of the main things (along with the principles/manifesto on the main about page) that drew me to Resonate.

I can see that a lot of work inevitably might take a dedicated developer on your team. However, if there is anything I can help you with now that could assist in decision making please let me know.

For example, if you would like I can have a look at taking the current PWA and wrapping it with capacitor for learning purposes and to see how it would work.

3 Likes

@aytrus Thanks! A simple proof of concept using Capacitor would be a great start…

This is just speculation for now, but as it says above, it would be great to have a presence in the app stores for growth and profile alone.

Thanks to @angus and the whole Dev team we have made big strides recently on the player, the API’s, the forum and the design of a new signup flow which is the focus of a current epic:

@angus I was wondering if, rather than attempt to do the whole player as a mobile app (maybe a very big job), we could try to implement that PWA signup flow as a ‘true’ app in the play and ios stores. The goals of such an app would be:

  • provide a minimal initial presence for Resonate to appear in the app stores at ‘refresh’ time - a ‘signup’ app;
  • provide ‘signposting’ from the app to launch the player (still a PWA in a mobile browser at this stage) and redirection to the website or forum;
  • allow us to check if the Capacitor component has a big performance hit in comparison to the browser / PWA version;
  • uncover some of the inevitable bugs and issues and assess the amount of extra effort needed to maintain what could be regarded as a second ‘stack’;
  • in trying to register the app with the ios app store, find out if Apple will try to hit us with a 30% surcharge for ‘in-app purchases’… a sort of test case.

I’ll leave it to @angus to comment here… we’ve got some very urgent stuff to do right now, so it may be a little while before we can give this our full attention.

1 Like