Neverending Package Mountain

    TypeScript icon, indicating that this package has built-in type declarations

    4.1.0 • Public • Published

    NOTE: These sdk and samples only for the Agora Video 4.x APIs. For examples using previous releases please see the following branches:

    Agora RTC SDK for Electron

    Platform npm npm License License


    • 📦 Newly designed middle-tier API and Native C++ SDK.
    • 🛡 Written in TypeScript with predictable static types.

    🖥 Environment Support

    • 🌈 Support macOS x86-64 and arm64 (Electron 11+)
    • ⚙️ Support Windows ia32 and x64
    • Electron: 4.x ~ latest
    x86 | arm64 ia32 | x64 4.0.0 ~ Latest

    📦 Install

    In newest version you can define installation configuration in package.json (or .npmrc, while package.json has a higher priority), usually you can just provide "prebuilt", and "arch".

    // package.json
      "agora_electron": {
        "prebuilt": true,
        "arch": "x64"
    // .npmrc
    agora_electron_sdk_pre_built=true // defalut value is true
    agora_electron_sdk_arch=x64 // only support windows:

    Properties detail:

    • prebuilt whether to automatically download prebuilt NodeJS C++ Addon or build locally(which need to provide development env)
    • arch: If not set, the script will automatically choose the arch. only support windows
    • platform darwin or win32
    ## Automatic platform and architecture selection
    npm install agora-electron-sdk


    ## or select 32 bit architecture on Windows
    npm install --agora_electron_sdk_arch=ia32
    ## or select 64 bit architecture on Windows
    npm install --agora_electron_sdk_arch=x64

    🔨 Usage

    import createAgoraRtcEngine from "agora-electron-sdk";
    const rtcEngine = createAgoraRtcEngine();
    rtcEngine.initialize({appId: "<your agora app id>"});

    When using without electron-webpack

    When using directly within a web electron project with custom webpack configuration, you may see errors when compiling. It's because you have not properly configured loader for node addon. A convenient way to skip the compile process is to set externals property of your webpack config to {"agora-electron-sdk": "commonjs2 agora-electron-sdk"}

    🔗 Links

    • Document - Official document

    • Demo - A quick start demo based on Vue/React and this repo

    • Changelog - Attention to newest information

    • Release Notes - Attention to newest information

    ⌨️ Development

    Build From Source Code

    You will need to build Agora RTC Electron SDK from source if you want to work on a new feature/bug fix, try out the latest features which are not released yet, or maintain your own fork with patches that cannot be merged to the core.



    • Python 2.7
    • Visual Studio Code C++ Desktop Develop Framework


    • Python 2.7
    • XCode

    Clone locally:

    $ git clone
    $ cd Electron-SDK
    $ npm install #or yarn
    # build macOS
    $ npm install --agora_electron_sdk_pre_built=false
    # build  32 bit architecture on Windows
    $ npm install --verbose --agora_electron_sdk_pre_built=false  --agora_electron_sdk_arch=ia32
    # build  64 bit architecture on Windows
    $ npm install --verbose --agora_electron_sdk_pre_built=false  --agora_electron_sdk_arch=x64

    🤝 Contributing PRs Welcome

    Read our contributing guide and let's build a better antd together. :)

    1. Fork the Project
    2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
    3. Commit your Changes (git commit -m 'Add some AmazingFeature)
    4. Push to the Branch (git push origin feature/AmazingFeature)
    5. Open a Pull Request




    npm i agora-electron-sdk

    DownloadsWeekly Downloads






    Unpacked Size

    3.49 MB

    Total Files


    Last publish


    • luz33c
    • zhangtao1104
    • sbd021
    • mberky
    • luxuhui
    • agorabuilder