{"id":20268620,"url":"https://github.com/agoraio/signaling-sdk-samples-web","last_synced_at":"2025-10-27T00:45:30.766Z","repository":{"id":193507356,"uuid":"647550526","full_name":"AgoraIO/signaling-sdk-samples-web","owner":"AgoraIO","description":null,"archived":false,"fork":false,"pushed_at":"2024-01-13T09:36:09.000Z","size":2386,"stargazers_count":1,"open_issues_count":5,"forks_count":1,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-03-29T01:01:51.160Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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-05-31T02:55:30.000Z","updated_at":"2025-01-14T08:59:13.000Z","dependencies_parsed_at":"2023-09-08T13:59:29.748Z","dependency_job_id":"65f8538e-dc3b-4c62-aa37-e1c6e9a627a5","html_url":"https://github.com/AgoraIO/signaling-sdk-samples-web","commit_stats":null,"previous_names":["agoraio/signaling-sdk-samples-web"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AgoraIO/signaling-sdk-samples-web","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fsignaling-sdk-samples-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fsignaling-sdk-samples-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fsignaling-sdk-samples-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fsignaling-sdk-samples-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AgoraIO","download_url":"https://codeload.github.com/AgoraIO/signaling-sdk-samples-web/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgoraIO%2Fsignaling-sdk-samples-web/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272701858,"owners_count":24979078,"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","status":"online","status_checked_at":"2025-08-29T02:00:10.610Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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.630Z","updated_at":"2025-10-27T00:45:25.712Z","avatar_url":"https://github.com/AgoraIO.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Agora Signaling SDK for Web reference app\n\nThis repository holds the code examples used for the [Agora Signaling SDK for Web](https://docs.agora.io/en/signaling/overview/product-overview?platform=web) documentation. Clone the repo, run and test the samples, 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**This reference app uses Signaling SDK v2.x**.\n\n## Samples  \n\nThe runnable code examples are:\n\n- [SDK quickstart](./src/sdk_quickstart/) - the minimum code you need to integrate low-latency, high-concurrency\n  signaling features into your app using Signaling SDK.\n- [Secure authentication with tokens](./src/authentication_workflow/) - quickly set up an authentication token server, retrieve a token from the server, and use it to connect securely to Signaling as a specific user.\n- [Stream channels](./src/stream_channel/) - communicate to other users in topics.\n- [Store channel and user data](./src/storage) - easily store data for users and channels without the need to\n  set up your own databases. \n- [Connect through restricted networks with Cloud Proxy](./src/cloud_proxy/) - ensure reliable connectivity for your users when they connect from an\n  environment with a restricted network.\n- [Data encryption](./src/data_encryption) - integrate built-in data encryption into your app using Signaling.\n- [Geofencing](./src/geofencing) - only connect to Signaling within the specified region.\n\n## Prerequisites\n\nBefore getting started with this reference app, ensure you have the following set up:\n\n- A [supported browser](../reference/supported-platforms#browsers).\n- Physical media input devices, such as a camera and a microphone.\n- The [pnpm](https://pnpm.io/installation#using-npm) package manager.\n\n\n## Run this project\n\nTo run the sample projects in this folder, 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/signaling-sdk-samples-web.git\n    ```\n\n1. **Install the dependencies** \n\n    Open Terminal in the root directory of this project and run the following command:\n\n    ```bash\n    pnpm install\n    ```\n   \n1. **Modify the project configuration**\n\n   This app loads connection parameters from [`./src/signaling_manager/config.json`](./src/signaling_manager/config.json).  If a valid `serverUrl` is provided, all samples use the token server to obtain a token, except the **SDK \n   quickstart**  which uses `token`.\n\n   Ensure that `config.json` is populated with the required parameter values before running this reference app.\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    - `token`: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](https://docs.agora.io/en/signaling/get-started/authentication-workflow) for information on how to set up a token server.\n    - `tokenExpiryTime`: The time in seconds after which a token expires.\n\n1. **Build and run the project**\n\n   In the project folder, open Terminal and run the following command:\n\n    ``` bash\n    pnpm run dev\n    ```\n   Open the reference app using the URL displayed in Terminal. \n\n1. **Run the samples in the reference app**\n\n   Choose a sample and test the code.\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/signaling-sdk-samples-web/issues).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagoraio%2Fsignaling-sdk-samples-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagoraio%2Fsignaling-sdk-samples-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagoraio%2Fsignaling-sdk-samples-web/lists"}