{"id":15286857,"url":"https://github.com/cjam/react-native-spotify-remote","last_synced_at":"2025-04-13T02:19:01.002Z","repository":{"id":34297722,"uuid":"174645804","full_name":"cjam/react-native-spotify-remote","owner":"cjam","description":"React Native wrapper around the Spotify Remote SDK","archived":false,"fork":false,"pushed_at":"2024-02-24T13:57:36.000Z","size":5196,"stargazers_count":255,"open_issues_count":76,"forks_count":101,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-10-30T02:36:49.315Z","etag":null,"topics":["android","cocoapods","ios","objective-c","react-native","spotify","typescript","xcode"],"latest_commit_sha":null,"homepage":null,"language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cjam.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-09T03:58:51.000Z","updated_at":"2024-10-29T10:31:10.000Z","dependencies_parsed_at":"2024-06-19T09:16:27.072Z","dependency_job_id":"78067d0e-fefd-4aa8-9626-085e6bb89986","html_url":"https://github.com/cjam/react-native-spotify-remote","commit_stats":{"total_commits":188,"total_committers":21,"mean_commits":8.952380952380953,"dds":"0.29255319148936165","last_synced_commit":"7c13126ec6ce5e990a83aa730b65382ce709e37a"},"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cjam%2Freact-native-spotify-remote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cjam%2Freact-native-spotify-remote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cjam%2Freact-native-spotify-remote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cjam%2Freact-native-spotify-remote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cjam","download_url":"https://codeload.github.com/cjam/react-native-spotify-remote/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654364,"owners_count":21140286,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","cocoapods","ios","objective-c","react-native","spotify","typescript","xcode"],"created_at":"2024-09-30T15:18:45.904Z","updated_at":"2025-04-13T02:19:00.953Z","avatar_url":"https://github.com/cjam.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spotify App Remote for React Native\n\nNOTE: This library is not being actively maintained! \n\n[![npm version](https://badge.fury.io/js/react-native-spotify-remote.svg)](https://badge.fury.io/js/react-native-spotify-remote)\n\n[![Spotify iOS SDK Version](https://img.shields.io/badge/Spotify%20iOS%20SDK-v1.2.2-brightgreen)](https://github.com/spotify/ios-sdk/commit/f9a7d53967de5ea633845c2387b7fc8f90b96265)\n\n[![Spotify Android App Remote Version](https://img.shields.io/badge/Spotify%20Android%20App%20Remote%20SDK-v0.7.2-brightgreen)](https://github.com/spotify/android-sdk/commit/cfd6b68a47440a7db8afac1983d92d324a1c0015)\n\n[![Spotify Android Auth Version](https://img.shields.io/badge/Spotify%20Android%20Auth%20SDK-v1.2.3-brightgreen)](https://github.com/spotify/android-sdk/commit/cfd6b68a47440a7db8afac1983d92d324a1c0015)\n\nA react native module for the Spotify Remote SDK ( [iOS](https://github.com/spotify/ios-sdk/) | [Android](https://github.com/spotify/android-sdk/) )\n\n- [Documentation](https://cjam.github.io/react-native-spotify-remote/index.html)\n- [Change Log](./CHANGELOG.md)\n- [Contributing](./CONTRIBUTING.md)\n\n## Supported Features\n\nAn [Example](./example) project was developed to exercise and test all functionality within this library. If you are curious about how to use something, or need to compare your application setup to something that works, check there first.\n\n## Features\n\nThe following table shows the platform support for various Spotify Remote API functionality within this library.\n\n| Feature                      | iOS | Android |                              |\n| :--------------------------- | :-: | :-----: | ---------------------------: |\n| **Authentication**           |\n| `authorize`                  | ✅  |   ✅    |                              |\n| `getSession`                 | ✅  |   ✅    |                              |\n| `endSession`                 | ✅  |   ✅    |                              |\n| **Remote**                   |\n| `isConnectedAsync`           | ✅  |   ✅    |                              |\n| `connect`                    | ✅  |   ✅    |                              |\n| `disconnect`                 | ✅  |   ✅    |                              |\n| `playUri`                    | ✅  |   ✅    |                              |\n| `playItem`                   | ✅  |   ✅    |                              |\n| `playItemWithIndex`          | ✅  |   ✅    |                              |\n| `queueUri`                   | ✅  |   ✅    |                              |\n| `seek`                       | ✅  |   ✅    |                              |\n| `resume`                     | ✅  |   ✅    |                              |\n| `pause`                      | ✅  |   ✅    |                              |\n| `skipToNext`                 | ✅  |   ✅    |                              |\n| `skipToPrevious`             | ✅  |   ✅    |                              |\n| `setShuffling`               | ✅  |   ✅    |                              |\n| `setRepeatMode`              | ✅  |   ✅    |                              |\n| `getPlayerState`             | ✅  |   ✅    |                              |\n| `getRootContentItems`        | ✅  |   ❌    | Not available in Android SDK |\n| `getRecommendedContentItems` | ✅  |   ✅    |                              |\n| `getChildrenOfItem`          | ✅  |   ✅    |                              |\n| `getContentItemForUri`       | ✅  |   ❌    | Not available in Android SDK |\n| `getCrossfadeState`          | ✅  |   ✅    |                              |\n| **Remote Events**            |\n| `playerStateChanged`         | ✅  |   ✅    |                              |\n| `playerContextChanged`       | ✅  |   ✅    |                              |\n| `remoteDisconnected`         | ✅  |   ✅    |                              |\n| `remoteConnected`            | ✅  |   ✅    |                              |\n\n## Install\n\n```bash\nyarn add react-native-spotify-remote\n```\n\nor\n\n```bash\nnpm install --save react-native-spotify-remote\n```\n\n\u003e **Android 11 and Above**\n\u003e\n\u003e Add the following to your Android Manifest:\n\u003e\n\u003e `\u003cqueries\u003e \u003cpackage android:name=\"com.spotify.music\" /\u003e \u003c/queries\u003e`\n\n## Linking\n\nAs of React Native `\u003e 0.61`, auto linking should work for both iOS and Android. There shouldn't be any modifications necessary and it _Should_ work out of the box. If you do run into issues or are using an older version of React Native, the following sections should help get you up and running.\n\n### iOS\n\n\u003e This library requires being built with **XCode 11** for reasons given [here](https://github.com/spotify/ios-sdk/issues/179#issuecomment-581032275).\n\n#### Cocoapods (Recommended)\n\nBy far the easiest way to integrate into your project. In your `ios/PodFile` add the following lines to your projects target:\n\n```rb\n\tpod 'RNSpotifyRemote', :path =\u003e '../node_modules/react-native-spotify-remote'\n```\n\nSee the [`Example App PodFile`](./example/ios/PodFile) for a full example.\n\nI have only tested this against RN \u003e 0.60 in the example app. So if you have issues with a RN version \u003c 0.60 that might be a place to start troubleshooting.\n\n#### Manual\n\nManual linking is needed for projects that don't use Cocoapods.\n\n1. Manually add the frameworks from `node_modules/react-native-spotify-remote/ios/external/SpotifySDK` to _Linked Frameworks and Libraries_ in your project settings.\n\n![iOS Framework Search paths](.screenshots/ios-add-framework.png);\n\n2. Then add `../node_modules/react-native-spotify-remote/ios/external/SpotifySDK` to _Framework Search Paths_ in your project settings see the screenshot below. (By default it won't show the options in XCode so you may need to check `all`)\n\n![iOS Framework Search paths](.screenshots/ios-framework-searchpaths.png);\n\n##### Troubleshooting\n\n`'React/RCTConvert.h' file not found` might be due to a build dependency issue where `RNSpotifyRemote` is being built _before_ `React`. Try adding `React` as an explicit dependency of the `RNSpotifyRemote` target/project in XCode. Otherwise, Cocoapods should solve this for you.\n\n## Auth Callback\n\nIn order to support the callback that you will get from the Spotify App you will need to add a url handler to your app.\n\n### iOS\n\nModifications are needed for the `AppDelegate.m`:\n\n```objective-c\n#import \"AppDelegate.h\"\n\n#import \u003cReact/RCTBundleURLProvider.h\u003e\n#import \u003cReact/RCTRootView.h\u003e\n#import \u003cRNSpotifyRemote.h\u003e\n\n@implementation AppDelegate\n\n- (BOOL)application:(UIApplication *)application openURL:(NSURL *)URL options:(NSDictionary\u003cUIApplicationOpenURLOptionsKey, id\u003e *)options\n{\n  return [[RNSpotifyRemoteAuth sharedInstance] application:application openURL:URL options:options];\n}\n\n@end\n```\n\n### Android\n\nIf you need to link your project manually, here are some things you'll need to do.\n\n1. Open up `android/app/src/main/java/[...]/MainApplication.java`\n\n- Add the following imports to the top of the file\n\n```\nimport com.reactlibrary.RNSpotifyRemotePackage;\n```\n\n- Add to the list returned by `getPackages()` for example:\n\n```java\n      @Override\n      protected List\u003cReactPackage\u003e getPackages() {\n        @SuppressWarnings(\"UnnecessaryLocalVariable\")\n        List\u003cReactPackage\u003e packages = new PackageList(this).getPackages();\n        // Packages that cannot be autolinked yet can be added manually here, for example:\n\t\t   packages.add(new RNSpotifyRemotePackage());\n        return packages;\n      }\n```\n\n2. Append the following lines to `android/settings.gradle`:\n\n   ```\n   include ':react-native-spotify-remote'\n   project(':react-native-spotify-remote').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-spotify-remote/android')\n   ```\n\n3. Insert the following lines inside the dependencies block in `android/app/build.gradle`:\n   ```\n   implementation project(':react-native-spotify-remote')\n   ```\n4. As per the [Spotify Android SDK Docs](https://developer.spotify.com/documentation/android/guides/android-authentication/) Insert the following lines into `android/app/src/AndroidManifest.xml`\n\n```xml\n      \u003cactivity\n            android:exported=\"true\"\n            android:name=\"com.spotify.sdk.android.authentication.AuthCallbackActivity\"\n            android:theme=\"@android:style/Theme.Translucent.NoTitleBar\"\u003e\n\n            \u003cintent-filter\u003e\n                \u003caction android:name=\"android.intent.action.VIEW\"/\u003e\n                \u003ccategory android:name=\"android.intent.category.DEFAULT\"/\u003e\n                \u003ccategory android:name=\"android.intent.category.BROWSABLE\"/\u003e\n\n                \u003cdata\n                    android:scheme=\"\u003cYOUR_APPLICATION_SCHEME\u003e\"\n                    android:host=\"\u003cYOUR_APPLICATION_CALLBACK\u003e\"/\u003e\n            \u003c/intent-filter\u003e\n        \u003c/activity\u003e\n\n        \u003cactivity\n            android:name=\"com.spotify.sdk.android.authentication.LoginActivity\"\n            android:theme=\"@android:style/Theme.Translucent.NoTitleBar\"\u003e\n        \u003c/activity\u003e\n```\n\nIf you have issues linking the module, please check that gradle is updated to the latest version and that your project is synced.\n\n## Usage\n\n### Example Application\n\nThis repo contains an [Example App](./example/Readme.md) which should be the quickest and easiest way to get up and running to try things out. It is using React Hooks (cuz they're pretty cool) and exercises all of the remote API calls.\n\n### In Code\n\nAgain, I recommend looking at the example app. If you specifically want to see some code that actually does stuff take a look at the [App.tsx](./example/App.tsx).\n\nHere's how you would use this library with Typescript (though the same mostly applies to Javascript) and the `async`/`await` syntax for promises (Just cuz I like em).\n\n```typescript\nimport {\n  auth as SpotifyAuth,\n  remote as SpotifyRemote,\n  ApiScope,\n  ApiConfig,\n} from \"react-native-spotify-remote\";\n\n// Api Config object, replace with your own applications client id and urls\nconst spotifyConfig: ApiConfig = {\n  clientID: \"SPOTIFY_CLIENT_ID\",\n  redirectURL: \"SPOTIFY_REDIRECT_URL\",\n  tokenRefreshURL: \"SPOTIFY_TOKEN_REFRESH_URL\",\n  tokenSwapURL: \"SPOTIFY_TOKEN_SWAP_URL\",\n  scopes: [ApiScope.AppRemoteControlScope, ApiScope.UserFollowReadScope],\n};\n\n// Initialize the library and connect the Remote\n// then play an epic song\nasync function playEpicSong() {\n  try {\n    const session = await SpotifyAuth.authorize(spotifyConfig);\n    await SpotifyRemote.connect(session.accessToken);\n    await SpotifyRemote.playUri(\"spotify:track:6IA8E2Q5ttcpbuahIejO74\");\n    await SpotifyRemote.seek(58000);\n  } catch (err) {\n    console.error(\"Couldn't authorize with or connect to Spotify\", err);\n  }\n}\n```\n\n## Token Swap \u0026 Refresh\n\n\u003e A server must be running for with endpoints that allow Spotify to authenticate your app.\n\nIn order to support the OAuth flow, you need to have a server to support the calls for token `swap` and `refresh`. I have included the same server setup defined in the [react-native-spotify](https://github.com/lufinkey/react-native-spotify#token-swap-and-refresh) repo as it does exactly what you need.\n\nSee the [Server Readme](./example-server/README.md) for further instructions.\n\n## Additional notes\n\nNothing has been special to deal with Spotify _Free_ Users but this module _should_ still work.\n\n## Opening Issues\n\nPlease do not open issues about getting the module to work unless you have tried using both the example app and the example token swap server. Please make sure you have tried running on the latest react-native version before submitting a bug.\n\n## Contributors\n\nBig thanks to [@lufinkey](https://github.com/lufinkey) and all of the great work that he has done in the [react-native-spotify](https://github.com/lufinkey/react-native-spotify) repo which was the original source of inspiration and some useful patterns for this package.\n\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-15-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/cjam\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/1000288?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eColter McQuay\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=cjam\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/lufinkey\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/7820113?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLuis Finke\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-lufinkey\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/YozhikM\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/27273025?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eStanislav\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=YozhikM\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://djwillcaine.com\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/5376687?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eWill Caine\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=djwillcaine\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://www.estuderevisapp.com/\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/7197169?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eEveraldo Rosa de Souza Junior\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=juniorklawa\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://www.cankalya.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/33005883?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eİbrahim Can KALYA\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=IbrahimCanKALYA\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/uptotec\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/38630967?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMahmoud Ashraf Mahmoud\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=uptotec\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://linkedin.com/in/serafettinaytekin\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/19591219?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eŞerafettin Aytekin\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=srfaytkn\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://reteps.github.io\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/13869303?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePeter Stenger\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=reteps\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/reinhardholl\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/4051986?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eReinhard Höll\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/issues?q=author%3Areinhardholl\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=reinhardholl\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/gustavoggs\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/793491?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eGustavo Graña\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/issues?q=author%3Agustavoggs\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=gustavoggs\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://www.companjenapps.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/12894112?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDylan\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=dylancom\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/hoangvvo\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/40987398?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eHoang\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=hoangvvo\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/pretorh\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/4050990?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eHendri Pretorius\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/issues?q=author%3Apretorh\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=pretorh\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/suryababus\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/53492132?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003esuryababus\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/cjam/react-native-spotify-remote/commits?author=suryababus\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\n## Projects using this library\n\nCheckout existing [Projects](./PROJECTS.md) that are using this library.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcjam%2Freact-native-spotify-remote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcjam%2Freact-native-spotify-remote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcjam%2Freact-native-spotify-remote/lists"}