This is the Relisten v6 app. It is written on top of react native, typescript, and expo. It is designed to run on both Android and iOS, including native modules for each platform to handle gapless audio playback and track management. It is currently available on both the Play Store and the Apple App Store.
Relisten Mobile is licensed under AGPLv3 - and we welcome contributions. If you are interested in contributing, the best way to get started is to join our Discord and say hello in the #new-contributors channel. Here you can get help setting up the repository and figuring out what might be worthwhile to work on. In general, we graciously welcome contributions, but we also maintain some level of control over the feature-set and code quality, so it's always worth checking in with us before writing code.
To keep the code base clean, use the steps below to run locally and verify your changes. Also, before checking in code and creating Pull Requests, run yarn lint
to make sure your new code does not throw any new lint
errors.
If you are on a Mac and would like to get the app running locally on iOS simulator, please:
- Clone this repository and
cd
into it - Install nodejs and yarn
- We recommend installing nodejs 22 or more recent via nvm (
nvm use
to use version 22 from.nvmrc
) - To install yarn:
npm install --global yarn && yarn
- Follow these steps https://docs.expo.dev/workflow/ios-simulator to install XCode and XCode Command Line Tools
- Update your cocoapods:
npx pod-install
(oryarn pods
) npx expo run:ios -d
(oryarn ios
) and select which Simulator you would like to run on- You may have to hit the
r
key once the Simulator runs, it should bundle the application and render
There's some more steps - we'll update this README with more instructions as we help people onboard. If you are getting set up yourself, consider taking notes and sending a PR to improve this documentation - thanks!!
TODO
TODO
npx eas-cli@latest
./build_releases.sh