Minimal mobile apps for Android and iOS

@piper I wasn’t able to find an edit button so I’ll drop a few screenshots here to illustrate what I’m seeing with the vanishing toggle button:

Default setting, before switching modes, is “auto” and works as expected.

Switching to “dark” mode:

Switching to “light” mode:

Switching back to “auto” mode:

The control icon also doesn’t show when navigating the menus at the bottom while on “auto”:

Hope this helps!


This is amazing, @piper, and thank you so much for your recent contributions, @psi.

In reaching out to recruit more volunteer coders, what are some things you’d say I (along with others) should stress or emphasize at this stage? In the fewest amount of words possible?


what would grab me for a weekend project would be:

  • test volunteer amazing new desktop and mobile players
  • have afternoon to spare? Know something about react.js or want to learn? Grab a “good first issue” and contribute to the future of resonate
  • a gif of the app(s) in action, or screenshots

Issues · resonatecoop/beam · GitHub
Issues · resonatecoop/stream-app · GitHub

  • bullet 1 → just testing is low-effort and generally gets people playing with the platform (this is also what I’m doing, psychologically I’m trying really hard not to get sucked into a programming side-project)
  • bullet 2 → some people might be nervous about jumping in and turns out they don’t like a project. A bite-size “good first issue” is non-threatening



Great, we really appreciate your efforts on this. Here’s a short blurb describing Resonate’s code and needs:

Resonate is in need of front-end and back-end developers to help build out its ecosystem. Its main tech stack is JavaScript for the web player and a server/API written in Go and JavaScript, and its desktop and mobile apps are written in TypeScript and React. Any contributions and any degree of involvement would be greatly appreciated. Thank you!

EDIT: @boopboop posted while I was drafting my message so I didn’t see that til after, I think her framing above is super on point (and nice and short, like you asked for). For the third bullet point, you could grab screenshots from this page, since they look pretty nice.

EDIT2: I realized the images from the Android test page I linked above download as .webp files which is slightly sub-optimal. I’ve added a few screenshots to the GitHub page of the app here if you want to grab those (.png files are a bit easier to deal with).


Hey all,

I have an update regarding F-Droid. It appears that, since our app uses Expo, which depends on many non-free components (per Tutorial on how to package an app made with react-native/expo? - F-Droid Forum), it would not be allowed in the F-Droid repository as it stands currently.

Perhaps if the app were to be re-written as a pure React Native app without the Expo wrapper, it could be included. I have updated the associated issue#46 on the repository to reflect this. I will do some digging to see how feasible this is. Currently we use quite a few functions from Expo APIs but there should be vanilla React Native library based counterparts that could work in their place.


Cross-posting this response as it’s relevant to this thread:


Copy!!! Thank you for this.


We have some exciting news to announce! :tada:

:construction: Development on this repository stream-app has been switched to maintenance mode, in favor of building out a non-react-native-webview React Native TypeScript implementation in this repository: mobile :construction:

I’ve updated the Readme on the old repository, as well as relevant issues. We intend to build this out without Expo, so it should be allowed in F-Droid’s repositories as well. This new repository will be built completely independent and unreliant Resonate’s web player, which should allow us to tackle a wider featureset than we could given the previous implementation.

This will also allow us to better appease the Google Play Store and Apple Store’s requirements. The Google Play Store rejected our recent update due to:

Apps that employ in-store or in-app purchases must comply with the Payments policy guidelines. Specifically, Google Play’s billing system must not be used in cases where payments include tax exempt donations.

The older Android version is still up in the Google Play Store, so users can still use that until this new iteration is available.

If anyone knows any developers who might be interested in assisting - again, this is going to be written in React Native and TypeScript - send them on over to the new mobile repository and have them take a look! Thanks everyone!


Quick update regarding the existing Google Play Store Android app, it was identified here:

that the Android app has been taken down. I’d hoped that this was just the latest release I submitted didn’t meet their standards, but this is apparently all releases.

They’ve supplied two “reasons” for this :roll_eyes: :

  1. Read through the Metadata policy for more details.

  1. Make appropriate changes to your app, and be sure to address the issue described above. Be sure to adjust your app’s description, title, icon, screenshots, and/or promotional images to be appropriate for all audiences.
  2. Double check that your app is compliant with all other Developer Program Policies.
  3. Sign in to your Play Console and submit the update to your app.

Action required: Provide proof of permission or submit an updated app for review
Here’s what to do to help get your app on Google Play:

  1. Read through the Payments policy for more details.

  1. If the donations are for an eligible tax-exempt organization, please provide verifiable documentation that indicates the organization’s tax-exempt status (e.g., Internal Revenue Service determination letter for entities in the United States) through the Advance Notice Form.
  • If the organization is not a tax-exempt organization, you must remove the donation functionality from your app or use Google Play’s in-app billing system when collecting donations.
  1. Double check that your app is compliant with all other Developer Program Policies.
  2. Sign in to Play Console and submit the update to your app.

I’m sure we could handle making the payments page just open in the user’s browser, but as far as “inappropriate language” goes, we could add a switch in setting that defaults to non-explicit and replaces profanity with asterisks. However, this would require changing code in the stream repository, which we’re trying to move away from making any new changes to, as we’re building out beam and mobile to provide longterm support. In the meantime, I have created an Android release on GitHub with the binaries. Hopefully Android users can download the packages and install them using these builds, while we continue to build out the mobile app.


Best course of action so far in my opinion as we want minimal additional work for you while you’re building a path away from the current working ecosystem. Let’s not dedicate too much time to Google’s bullshit (should I say BS? B*****?) before we actually have to.


Yeah, unless there is a significant listener base who exclusively was using this app and has no other option, I’d encourage focusing on other priorities.

Are there stats for active users of the app?

Looks like it was “taken down” by Google on July 1.

Android stats:

iOS stats: 104 total testers


I’ve changed our Google Play Store target audience to be 18+ and up: The target age group for your app is: 18 and over

I’ve put up a change that will make any requests stream-app makes to will open in the user’s browser, and not the app. This should make Google be okay with the donations page, as it will no longer be “in-app”. This will only affect Android users, iOS users will still be able to navigate to pages.

These should hopefully address these two issues:

Fingers crossed that these two quick fixes appease Google Play Store. The new app bundle has been submitted to them and is currently pending their review.


Can I get some updated (and succinct) copy on the needs as it relates to progress on the mobile app that I can share through various channels in order to solicit more volunteer dev help?


I think the move to a new framework as expressed bellow is currently in a very rough state because @piper and @psi won’t be able to really do the work until the 1st week of August (could be until the 8th of August, maybe slightly earlier). So we might want to wait then to do a proper call for developpers but I’ll leave that judgement call to Piper and Psi.

Furthermore, as it stands, Piper, Psi and @jeremy do not currently have access to the Resonate server which is limiting to do the work they need to do and we’re waiting on @auggod and @peter to walk them through the process of having complete access to all the resources they need, which I think should be sorted before early August so that they can start right back on it when they’re back.

Until then I think this sums up the needs succintly for now

Note that all I’ve mentionned above was just a short summary of what’s been discussed and decided collectively at the dev stand up meeting two days ago in the presence of @brndnkng and @Hakanto as well ! Hope this helps !

Also incidentally @jeremy just posted this which is I think the single most important document about how to further proceed with Resonate dev work :


Currently mobile and desktop apps are blocked by the v3 API (the API works for logging in but it seems that streaming tracks using it doesn’t spend any credits… not ideal).

@jeremy has this proposal which @psi and I think is a great next step - we’d like outside devs to weigh in on it and potentially get involved in helping with that if the proposal is approved. We had an awesome Dev Standup Meeting last Wednesday with brandon and Peter H and a bunch of others on the call that was really productive when we discussed this and the current blockers, and we collectively decided on the call that it was time for @jeremy to post his proposal publicly.

Maybe something like the following would work for a succinct social media post to attract more devs:

Resonate has a new tech-related proposal on the floor (Some proposals to improve product development at Resonate) to consolidate and simplify its back-end infrastructure. We would like to invite devs to provide initial feedback on the proposal, and to get involved and assist in this work., let me know what you think about all of this (I know this is a lot to chew on). Thank you so much for your efforts and your continued pushing to do socials and to bring more devs on board (which we definitely, desperately need).

In other news, @relish and other Android users, Google has reinstated stream-app in the Google Play Store! Give it a whirl and let me know if you run into any issues, but it looks like we’re back up and running from what I can tell over here. :tada:


Mobile App Update - Release v1.1.9 / 19

Because the forum now lives at (part of 🚧 Warning: Resonate Infrastructure In Flux Coming Week(s) [Effective Immediately]), I’ve created a new release of stream-app to allow users to continue to navigate and use the community forum in-app, instead of it automatically opening in the user’s browser. For those who don’t know, you can scroll to the bottom footer (or even quicker, press in the top right, click Settings, and because it’s a shorter page you can get to the bottom quicker) and press Forum - you can actually browse the forum using the app! I like doing this because it provides a bit more screen space (no browser URL bar at the top) and a more focused experience.

These new builds have been submitted to Google Play Store and Apple App Store, and are currently being reviewed - should be live sometime tomorrow. :sunflower:


Thank you @piper for pursuing this app so diligently and keeping the community in the loop via the Forum.


Minor note: I’ve updated the topic above as well as the stream-app’s Readme file regarding its development status - initially I stated that development on the repository would be discontinued in favor of the mobile repository, but I’ve since realized that’s an incorrect characterization - it’s essentially in maintenance mode (we will continue to fix bugs as they arise and fix problems where possible). The repository is essentially as feature complete as it can be within the confines of the react-native-webview library, so new features aren’t really possible without switching to regular react-native (the goal of the mobile repository).

Just wanted to post this clarifying update/edit to make sure people are aware that we’re still currently supporting and maintaining the stream-app while mobile (our long-term goal) is being built out. :smiley:


Please :pleading_face: disable smooth scrolling. Feels like scrolling to a point where I didn’t intention it to be scrolled to.

1 Like