Flat is a web and desktop client for an open source online classroom platform built on Agora's real-time communication infrastructure.
The tool addresses the need for a unified classroom experience across web browsers and desktop operating systems. It integrates Agora's real-time communication services to enable live video and audio chat, instant messaging, and collaborative whiteboarding. The architecture separates UI components from business logic, allowing developers to work on interface elements independently through Storybook while maintaining a cohesive application structure. Classrooms support scheduling, periodic sessions, and recording capabilities that preserve both whiteboard interactions and multimedia content for later replay.
Flat suits organizations building or deploying online education platforms that need a client application rather than building from scratch. The project provides both Electron-based desktop clients for Windows and macOS and a web-based client, so teams can choose deployment targets based on their user base. The codebase is written in TypeScript and uses pnpm for dependency management.
The project maintains active development with regular commits and has designated entry points for new contributors through good first issue labels. Documentation covers environment configuration, debugging procedures, and release notes to support both users and developers working with the codebase.