Repolode
netless-io

netless-io/flat

Open-source online classroom client for Web, Windows and macOS, built on Agora's real-time audio, video and messaging.

Open-source alternative to:Zoom

Stars
6,442
Forks
878
Open issues
13
Last commit
8 days ago

What is it?

Flat is the client side of Agora Flat, an open-source virtual classroom. It provides an Electron desktop app for Windows and macOS and a web app, both sharing UI and business logic in one monorepo.

The client covers live teaching: a multifunctional interactive whiteboard, real-time video and audio chat (RTC), real-time messaging (RTM), and screen sharing. Users can log in with GitHub or WeChat, create, join and schedule classrooms, including periodic rooms, and upload multimedia courseware to cloud storage.

Classrooms can be recorded and replayed, including whiteboard replay, cloud recording of video and audio, and message replay. Flat can run without its server, and the repository includes Storybook for developing the UI components separately.

Key features

  • 01Interactive whiteboard with real-time video and audio chat
  • 02Real-time messaging and screen sharing during classes
  • 03Login with GitHub or WeChat
  • 04Create, join and schedule classrooms, including periodic rooms
  • 05Record classes with whiteboard, audio/video and message replay
  • 06Cloud storage for multimedia courseware

Use cases

  • Running an online class or tutoring session with video, whiteboard and screen sharing
  • Building a self-hosted or customized virtual classroom client on top of Agora
  • Recording lessons for later replay with whiteboard and chat history

Quick start

  1. 1

    Install pnpm globally if you don't have it

    npm i -g pnpm
  2. 2

    Clone the repository and install dependencies at the project root

    pnpm i
  3. 3

    Build and run the Flat Web client

    pnpm start:web

Things to know

  • Requires Agora real-time audio, video and messaging services for the classroom features.
  • Commercial use gets no customization, deployment support or customer support from the maintainers.

Topics

FAQ

What is flat?
Open-source online classroom client for Web, Windows and macOS, built on Agora's real-time audio, video and messaging. Flat is the client side of Agora Flat, an open-source virtual classroom. It provides an Electron desktop app for Windows and macOS and a web app, both sharing UI and business logic in one monorepo.
Is flat free to use? What license does it have?
flat is open source under the MIT license. Check the license terms before using it in commercial products.
Is flat still maintained?
Actively maintained. The last commit to flat was on Oct 30, 2026.
What can I use flat for?
Running an online class or tutoring session with video, whiteboard and screen sharing Building a self-hosted or customized virtual classroom client on top of Agora Recording lessons for later replay with whiteboard and chat history
How do I install flat?
Install pnpm globally if you don't have it: npm i -g pnpm Clone the repository and install dependencies at the project root: pnpm i Build and run the Flat Web client: pnpm start:web
Where can I get flat?
The source code and installation instructions are on GitHub: https://github.com/netless-io/flat

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects