/VideoUIKit-Web-React

A Web library to simply integrate Agora Video Calling or Live Video Streaming to your website with just a few lines of code.

Primary LanguageTypeScriptMIT LicenseMIT

[ARCHIVED] Agora React VideoUIKit

⚠️ This project is no longer maintained and has been archived.
Please note that this repository is now in a read-only state and will not receive any further updates or support. We recommend migrating to the following alternatives:

  • Agora SDK: For developers seeking a customizable solution with full control over the user experience. Learn more
  • Agora App Builder: For those preferring a no-code approach to integrate real-time engagement features. Get started

For documentation and support, please visit the Agora Documentation.

NPM JavaScript Style Guide

Instantly integrate Agora video calling or streaming into your web application using a React based VideoUIKit.

Getting started

Requirements

Installation

To a react application, add the following:

npm i agora-react-uikit

Usage

This UIKit contains a high level component called AgoraUIKit. You can check out code explanation here.

A simple sample app integrating Agora UI Kit:

import React, {useState} from 'react';
import AgoraUIKit from 'agora-react-uikit';

const App = () => {
  const [videoCall, setVideoCall] = useState(true);
  const rtcProps = {
    appId: '<Agora App ID>',
    channel: 'test', // your agora channel
    token: '<Your channel Token>' // use null or skip if using app in testing mode
  };
  const callbacks = {
    EndCall: () => setVideoCall(false),
  };
  return videoCall ? (
    <div style={{display: 'flex', width: '100vw', height: '100vh'}}>
      <AgoraUIKit rtcProps={rtcProps} callbacks={callbacks} />
    </div>
  ) : (
    <h3 onClick={() => setVideoCall(true)}>Start Call</h3>
  );
};

export default App;

Insert your Agora AppID and Token.

Demo Project

There's a demo project in the repo here.

Instructions for running the demo:

  1. Add your Agora App ID to /example/src/App.tsx
  2. Run npm start to start the bundler to build the library
  3. Execute cd example && npm start to run the example app

Documentation

For full documentation, see our docs page.

You can visit the wiki for other examples and in depth guide.

You can also export the UIKit to use outside a React project (for example in a vanilla-js project) using web-components. Find out more in the /web-component directory.

UIKits

The plan is to grow this library and have similar offerings across all supported platforms. There are already similar libraries for Android, iOS, React Native, and Flutter, so be sure to check them out.