{"id":20268619,"url":"https://github.com/agoraio/video-sdk-samples-reactnative","last_synced_at":"2026-05-09T11:56:45.784Z","repository":{"id":195813110,"uuid":"623044353","full_name":"AgoraIO/video-sdk-samples-reactnative","owner":"AgoraIO","description":null,"archived":false,"fork":false,"pushed_at":"2024-02-04T14:41:47.000Z","size":9515,"stargazers_count":0,"open_issues_count":1,"forks_count":2,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-01-14T05:25:40.957Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AgoraIO.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2023-04-03T15:23:51.000Z","updated_at":"2023-09-19T14:43:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"187e92ba-dc30-4e67-acb7-c6682d1cf8f5","html_url":"https://github.com/AgoraIO/video-sdk-samples-reactnative","commit_stats":null,"previous_names":["agoraio/video-sdk-samples-reactnative"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fvideo-sdk-samples-reactnative","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fvideo-sdk-samples-reactnative/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fvideo-sdk-samples-reactnative/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fvideo-sdk-samples-reactnative/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AgoraIO","download_url":"https://codeload.github.com/AgoraIO/video-sdk-samples-reactnative/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241753144,"owners_count":20014252,"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":[],"created_at":"2024-11-14T12:19:05.627Z","updated_at":"2026-05-09T11:56:40.746Z","avatar_url":"https://github.com/AgoraIO.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Agora Video SDK for React Native reference app\n\nThis app demonstrates the use of [Agora Video SDK for React Native](https://docs.agora.io/en/video-calling/get-started/get-started-sdk) for real-time audio and video communication. It is a robust and comprehensive documentation reference app for React Native, designed to enhance your productivity and understanding. Clone the repo, run and test the samples, and use the code in your own project. Enjoy.\n\n- [Samples](#samples)\n- [Prerequisites](#prerequisites)\n- [Run this project](#run-this-project)\n- [Contact](#contact)\n\n## Samples\n\nThis reference app includes several samples that illustrate the functionality and features of Agora Video and Voice SDKs. Each sample is self-contained and the relevant code can be found in its own folder in the root directory. For more information about each sample, see:\n\n**Get Started**\n- [SDK quickstart](./src/get-started-sdk)\n- [Secure authentication with tokens](./src/authentication-workflow)\n\n**Develop**\n- [Call quality best practice](./src/ensure-call-quality)\n- [Stream media to a channel](./src/play-media)\n  \n**Integrate Features**\n- [Audio and voice effects](./src/audio-and-voice-effects)\n  \n\n## Prerequisites\n\nBefore getting started with this reference app, ensure you have the following set up:\n\n- [A React Native development environment](https://reactnative.dev/docs/environment-setup).\n- An IDE of your choice.\n- An Agora account and project.\n- A computer with Internet access. Ensure that no firewall is blocking your network communication.\n\n## Run this project\n\nTo run this reference app, take the following steps:\n\n1. **Clone the repository**\n\n    To clone the repository to your local machine, open Terminal and navigate to the directory where you want to clone the repository. Then, use the following command:\n\n    ```bash\n    git clone https://github.com/AgoraIO/video-sdk-samples-reactnative.git\n    ```\n\n1. **Open the project**\n\n   Open your project in an IDE and launch a terminal. Then, install the required dependencies:\n\n   ```bash\n   yarn install\n   ```   \n\n1. **Modify the project configuration**\n\n   The app loads connection parameters from [`./src/agora-manager/config.ts`](./src/agora-manager/config.ts). Ensure that the file is populated with the required parameter values before running the application.\n\n    - `uid`: The user ID associated with the application.\n    - `appId`: (Required) The unique ID for the application obtained from [Agora Console](https://console.agora.io). \n    - `channelName`: The default name of the channel to join.\n    - `rtcToken`:An token generated for `channelName`. You generate a temporary token using the [Agora token builder](https://agora-token-generator-demo.vercel.app/).\n    - `serverUrl`: The URL for the token generator. See [Secure authentication with tokens](authentication-workflow) for information on how to set up a token server.\n    - `tokenExpiryTime`: The time in seconds after which a token expires.\n\n    If a valid `serverUrl` is provided, all samples use the token server to obtain a token except the **SDK quickstart** project that uses the `rtcToken`. If a `serverUrl` is not specified, all samples except **Secure authentication with tokens** use the `rtcToken` from `config.json`.\n\n1. **Build and run the project**\n\n   - **For IOS**:\n      \n      1. Install CocoaPods:\n\n         ```bash\n         npx pod-install\n         ```\n      \n      2. Run your project inside an IOS emulator:\n       \n         ```bash\n         yarn run ios\n         ```\n   - **For Android**:\n      \n      1. Run your project inside an Android emulator:\n         \n         ```bash\n         yarn run android\n         ```\n         Ensure that you have configured a video device for your Android virtual machine.\n\n1. **Run the samples in the reference app**\n\n    From the main app screen, choose and launch a sample.\n\n## Contact\n\nIf you have any questions, issues, or suggestions, please file an issue in our [GitHub Issue Tracker](https://github.com/AgoraIO/video-sdk-samples-reactnative/issues).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagoraio%2Fvideo-sdk-samples-reactnative","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagoraio%2Fvideo-sdk-samples-reactnative","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagoraio%2Fvideo-sdk-samples-reactnative/lists"}