![](/style/images/good.png)
![](/style/images/bad.png)
GitHub - netless-io/flat: Project flat is the Web, Windows and macOS client of A...
source link: https://github.com/netless-io/flat
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Agora Flat
Project flat is the Web, Windows and macOS client of Agora Flat open source classroom.
Try it now
Features
Open sourced front-end and back-end
- Optimized teaching experience
- Big class
- Small class
- One on one
- Real-time interaction
- Multifunctional interactive whiteboard
- Real-time video/audio chat(RTC)
- Real-time messaging(RTM)
- Participant hand raising
- Login via
- GitHub
- Classroom management
- Join, create and schedule classrooms
- Support periodic rooms
- View room history
- Classroom recording and replaying
- Whiteboard replaying
- Cloud recording for video and audio
- Messaging replaying
- Cloud Storage for multi-media courseware
- Device self-check
- Auto Updater
Development
UI and business logic are separated in Flat. You can run flat with development mode or quickly develop UI via Storybook.
Installation
At project root:
yarn run bootstrap
Development Mode
At project root:
yarn run start
Package Executable
- Run
yarn ship
at project root to package base on current system type. - Or run
yarn ship:mac
oryarn ship:win
at project root to package for the specified system.
Storybook
Many Flat components UI can be quickly viewed and developed via Storybook (Online address).
- Run
yarn --cwd packages/flat-components storybook
at project root to run Storybook locally.
Environment Variables Reference
Variable Description Note NETLESS_APP_IDENTIFIER Whiteboard Access Key See Projects and permissions AGORA_APP_ID Agora App ID For RTC and RTM. See Use an App ID for authentication CLOUD_STORAGE_OSS_ALIBABA_ACCESS_KEY Agora Cloud Recording OSS For storing RTC Cloud Recording media files. See Cloud Recording CLOUD_STORAGE_OSS_ALIBABA_BUCKET Agora Cloud Recording OSS As above CLOUD_STORAGE_OSS_ALIBABA_REGION Agora Cloud Recording OSS As above CLOUD_RECORDING_DEFAULT_AVATAR Agora Cloud Recording default user avatar URL See: Set the background color or background image WECHAT_APP_ID Wechat Open Platform App ID
FLAT_SERVER_DOMAIN
Flat Server deployed address
e.g. flat-api.whiteboard.agora.io
UPDATE_DOMAIN
Flat upgrade OSS address for storing artifacts
e.g. https://flat-storage.oss-cn-hangzhou.aliyuncs.com/versions
SKIP_MAC_NOTARIZE
Whether to skip the mac notarization step
value: yes
or no
APPLE_API_ISSUER
Apple notarizing issuer. Skip notarizing if not provided
See: electron-updater
APPLE_API_KEY
Apple notarizing key. Skip notarizing if not provided
See: electron-updater
WINDOWS_CODE_SIGNING_CA_PATH
Windows Code Signing CA file path. Skip if not provided
Relative to desktop/main-app
WINDOWS_CODE_SIGNING_CA_PASSWORD
Windows Code Signing CA password. Skip if not provided
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK