Skip to main content

Stream App

Explore the mobile & tablet stream-app repository...

πŸ›  Status: Maintenance Mode | Stable

This project is currently in maintenance mode - users should feel free to continue to use this app and expect bug fixes, but not expect many additional features, as this is considered relatively feature-complete (given the limitations of react-native-webview.

Future development is occurring here: mobile as a React Native TypeScript implementation without react-native-webview. Note that this repository is still active on the Google Play Store and the Apple Store, so please submit any issues for problems encountered here, as we are continuing to offer support and fix bugs while mobile development is still underway.

🎡 Resonate Stream App​

A mobile app for playing music on Resonate, an open source music streaming co-op.

The πŸ€– Android App is available for open testing.

The 🍎 Apple/iOS App is available for external testing.

The Expo Project Page permits testing with the Expo Go client.

A demonstration video is available.

See the stream repository for more details.

View the GitHub Project Board to track work progress and management for this repository.

🎢 Description​

Resonate is an open-source music streaming service run by a cooperative of artists and software developers.

If you want to know what we're building or want to get more involved, head over to the Platform category on our forum or read the Developer Guide in our Resonate Handbook.

View the project board where work is tracked for this repository. If you're looking for a good first task, feel encouraged to take on an un-assigned help wanted or good first task issues.

Are you building something using the Resonate API and would like to request a change? Resonate welcomes #proposals in the Co-Operation section of the forum.

πŸ—‚ Tech Stack​

  • Babel
  • Expo
  • React
  • React Native
  • TypeScript

πŸ”§ Installation & Start​

Clone this repository, install dependencies, and start expo.

git clone https://github.com/peterklingelhofer/stream-app.git
cd stream-app
yarn global add expo-cli
yarn
expo start

πŸ“¦ Build​

Install the latest Expo Application Services (EAS) package.

npm install -g eas-cli

Then create a build for whichever platform you desire:

eas build -p android
eas build -p ios

For more in-depth instructions and additional options, review the official Expo build documentation.

πŸ§ͺ Testing​

For testing, per #3 under Other issues to consider, we should probably also be testing (at-least locally) with the development branch of the stream repository considering the in-progress Wordpress transition -- change the WebView source prop in App.tsx to source={{ uri: 'https://stream.resonate.ninja/discover' }}. As far as we know, the only difference for the streaming player should be signup/login flow and account settings.

πŸ“š Contributing​

Contributing to others’ projects is an avenue to learn new software development skills and experience new technologies. The pull request is how your personal contributions will be added to the project. The following is an overview of the Git project management workflow:

Search project for contribution instructions and follow them if present. Fork project repo from your personal Github account. Copy the fork and clone repo onto your local machine. Add the original repository (the you forked) as a remote called upstream. If you created your fork a while ago be sure to pull upstream changes into your local repository. Create a new branch to work on! Branch from develop if it exists, else from master. Implement/fix your feature. Follow the code style of the project, including indentation. If the project has included tests use them. Add additional tests or convert existing tests as necessary. Add or convert project documentation as needed. Push your working branch to your forked repo on Github. Make a pull request from your forked repo to the origin master or development branch if present. Once your pull request is merged, pull down upstream master to your local repo and delete any additional branch(es) you may have created. Commit messages should be written in present tense describing what the committed code does and not what you changed in the code.

πŸ“– References​

πŸ“‘ License​

stream-app is licensed under the GNU General Public License v3.0

Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.

πŸ“Έ Screenshots​

Screenshot_20220328-234520_Resonate Screenshot_20220328-234804_Resonate Screenshot_20220328-234942_Resonate