个人老师可直接使用的在线授课软件

news2024/9/28 19:22:18

大家好,我是 Java陈序员

大学四年,疫情就占了三年!

以前小时候曾经梦想着不用去学校上课,在家就能上课,这不前几年疫情的时候就成为了现实!

随着互联网的兴起,各种线下的活动都可以搬到线上来执行,线上授课、线上会议等。

今天给大家介绍一个在线授课的开源项目,适用于老师授课或者视频会议

项目介绍

Flat 在线教室 —— 个人老师可直接使用的在线授课软件,开箱即用。

前后端完全开源,快速搭建简约美观的在线教室。

支持 Web 端、Windows 客户端与 macOS 客户端。

Flat 在线教室

功能特性:

  • 实时交互:支持多功能互动白板、实时音视频(RTC)通讯、即时消息(RTM)聊天
  • 登录方式:支持微信、GitHub、手机号验证码登录
  • 房间管理:支持加入、创建、预定房间,支持周期性房间
  • 课堂录制回放:支持白板信令回放、音视频云录制回放、群聊信令回放
  • 多媒体课件云盘
  • 屏幕共享

技术栈:

  • Electron
  • React
  • Vite
  • Node.js

Electron 是一个使用 JavaScript、HTML 和 CSS 构建跨平台的桌面应用程序。它基于 Node.js 和 Chromium,被 Atom 编辑器和许多其他应用程序使用。

Electron 兼容 Mac、Windows 和 Linux,可以构建出三个平台的应用程序。

功能体验

登录页面,可以使用手机号验证码、微信、Github账号登录。

登录页面

首页页面,展示房间列表和历史记录。可以加入一个创建好的房间,或者快速开始创建一个房间,也可以预定房间。

首页页面

加入房间,需要输入房间号,可以设置是否开启麦克风和摄像头。

加入房间

快速开始,创建一个房间,可以根据人数选择房间大小,有大班课(面向大量学生)、小班课(最多 16 位学生)、一对一。

快速开始

房间页面,房间的左中侧是白板,可以用来当作是上课的黑板;右侧是用户列表信息。

房间页面

白板工具,白板支持画笔、图形、橡皮擦、代码运行、几何代数、计时器、答题器、骰子、思维导图、富文本、板书、素材库等功能。

白板工具

代码运行,支持多种编程语言的在线运行。

代码运行

几何代数
几何代数

计时器

计时器

聊天列表,右侧聊天列表可以统计在线人数,查看学生举手,支持在线聊天。

聊天列表

按钮功能,房间右上角的按钮支持共享屏幕、录制视频、查看云盘文件、邀请加入、查看用户列表、房间设置等。

按钮功能

共享屏幕,支持共享 Chrome 标签页、窗口、整个屏幕的共享。

共享屏幕

查看云盘文件,支持查看文件、上传文件、新建文件夹。

查看云盘文件

邀请加入房间,支持生成链接和复制分享。

邀请加入房间

查看用户列表,支持全体下台、全员静音。

查看用户列表

房间设置,支持多语言、主题设置、白板设置、摄像头设置、扬声器设置、麦克风设置等。

房间设置

历史记录,记录已结束的课程,支持查看房间详情、查看回放、分享回放。

历史记录

云盘管理

云盘管理

应用设置

应用设置

安装使用

0、项目依赖:

  • Node.js
  • pnom

全局安装 pnpm:

npm i -g pnpm

1、克隆项目:

git clone https://github.com/netless-io/flat.git

2、安装依赖,在项目根目录下执行:

pnpm i

3、构建并运行 Web 客户端,在仓库根目录运行以下任意一个命令:

pnpm start:web
cd ./web/flat-web/ && pnpm start

4、构建并运行 Electron 客户端:

pnpm start

5、运行以下命令可以将项目打包成可执行文件:

项目根目录执行,将根据当前系统打包

pnpm ship

或者项目根目录执行,可针对指定的系统打包

pnpm ship:mac
pnpm ship:win

如果你因为网络问题导致无法下载 electron

  1. 可在项目目录新建: .npmrc 文件
  2. 写入 ELECTRON_MIRROR=“https://npmmirror.com/mirrors/electron/” 内容
  3. 重新执行 pnpm i 即可

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1323352.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

sql_lab靶场搭建以及存在的一些问题

sql_lab靶场搭建问题 首先检查小皮版本 把小皮改到5.3.29版本如果没有可以直接点击更多版本进行选择安装 当版本不对时则会暴出这种错误 SETTING UP THE DATABASE SCHEMA AND POPULATING DATA IN TABLES: Fatal error: Uncaught Error: Call to undefined function mysql_co…

SSH的交互原理(wireshark的分析)

SSH的交换原理(wireshark篇) 首先要想了解ssh的交换原理,必须要先了解他的加密方式,他的加密方式是对称加密,和公钥加密。什么意思呢? 首先我们向服务器发送一个请求,然后服务器会发给我们他的…

5个免费、跨平台的SQLite数据库可视化工具

前言 SQLite是一个轻量级的嵌入式关系型数据库,目前最新的版本是 SQLite3。今天推荐5个实用的SQLite数据库可视化工具(GUI),帮助大家更好的管理SQLite数据库。 什么是SQLite? SQLite是一个轻量级的嵌入式关系型数据库,它以一个…

3d游戏公司选择云电脑进行云办公有哪些优势

随着游戏行业的不断发展,很多的游戏制作公司也遇到了很多的难题,比如硬件更换成本高、团队协同难以及效率低下等问题,那么如何解决游戏行业面临的这些行业痛点,以及游戏制作公司选择云电脑进行云办公有哪些优势?一起来…

Word的兼容性问题很常见,禁用兼容模式虽步不是最有效的,但可以解决兼容性问题

当你在较新版本的Word应用程序中打开用较旧版本的Word创建的文档时,会出现兼容性问题。错误通常发生在文件名附近(兼容模式)。兼容性模式问题(暂时)禁用Word功能,从而限制使用较新版本Word的用户编辑文档。…

查看git的帮助信息

说明 在cmd窗口、或者git Bash shell下执行git --help或者git -h命令&#xff0c;可以查看git的帮助信息。 执行git <command> --help命令可以查看某个命令的帮助信息&#xff0c;其中<command>表示某个具体的命令。 示例1&#xff1a;在git Bash shell下运行git…

JavaOOP篇----第六篇

系列文章目录 文章目录 系列文章目录前言一、String 是最基本的数据类型吗?二、float f=3.4;是否正确?三、short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 +=1; 有错吗?四、重载和重写的区别前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住…

嵌入式Linux学习(3)——中断(Interrupt)子系统概念

目录 一. 中断概念与分类 1.1 中断分类 1.2 中断事件的处理流程 1.3 中断号(IRQ number) 1.4 中断源(Interrupt Source) 1.5 中断触发方式 二. 中断子系统架构 2.1 GIC 2.2 中断子系统架构 2.3 GIC与IP 2.3.1 典型GIC IP PLC390 GIC 400 GIC 500 REF 一. 中断概念与…

Git初始

一)git的介绍: 1)假设现在有一个文档&#xff0c;你的老板要求你针对于这份文件进行修改&#xff0c;进行完成的修改的版本是版本1&#xff0c;接下来是文档2&#xff0c;修改完文档2以后&#xff0c;接下来老板还不同意&#xff0c;于是又有了文档三&#xff0c;文档四&#x…

海康rtsp拉流,rtmp推流,nginx部署转flv集成

海康rtsp拉流&#xff0c;rtmp推流&#xff0c;nginx部署转flv集成 项目实际使用并测试经正式使用无问题&#xff0c;有问题欢迎评论留言 核心后台java代码&#xff1a; try {// FFmpeg命令String command "ffmpeg -re -i my_video.mp4 -c copy -f flv rtmp://localho…

android11-开机自启脚本

1. 编写myshell脚本 diff --git a/device/rockchip/rk356x/ok3568_r/myshell.sh b/device/rockchip/rk356x/ok3568_r/myshell.sh new file mode 100644 index 0000000000..c78b6d93bd --- /dev/nullb/device/rockchip/rk356x/ok3568_r/myshell.sh-0,0 1,4 #!/vendor/bin/shec…

c# winform chart 单个柱形设置

目前实现到第三张图形,有可以实现四张图形的请大佬帮助。 实现到第三张图的设置如下 private void Form1_Load(object sender, EventArgs e) {// 隐藏标题//chart1.Titles.Clear();// 隐藏图例chart1.Legends.Clear();// 隐藏 Y 轴的网格线和标签chart1.ChartAreas[0].AxisY.…

论文笔记:Bilinear Attention Networks

更精简的论文学习笔记 1、摘要 多模态学习中的注意力网络提供了一种选择性地利用给定视觉信息的有效方法。然而&#xff0c;学习每一对多模态输入通道的注意力分布的计算成本是非常昂贵的。为了解决这个问题&#xff0c;共同注意力为每个模态建立了两个独立的注意分布&#x…

解决驱动模块Licence信息提示

一. 简介 上一篇文章挂载 驱动模块时&#xff0c;提示 驱动模块 Licence相关的信息。文章地址如下&#xff1a; 字符设备驱动的加载与卸载-CSDN博客 本文旨在 解决 "挂载字符驱动模块时&#xff0c;提示 Licence信息的提示" 这个问题。 二. 解决驱动模块Licence信…

[Toolschain cpp ros cmakelist python vscode] 记录写每次项目重复的设置和配置 不断更新

写在前面 用以前的设置&#xff0c;快速配置项目&#xff0c;以防长久不用忘记&#xff0c;部分资料在资源文件里还没有整理 outline cmakelist 复用vscode 找到头文件vscode debug现有代码直接关联远端gitros杂记repo 杂记glog杂记 cmakelist 复用 包含了根据系统路径找库…

0062-Java运算符

文章目录 1.运算符介绍2.算术运算符2.1 介绍2.2 细节说明 3.关系运算符(比较运算符)3.1 介绍3.2 细节说明 4.逻辑运算符4.1 介绍4.2 逻辑运算规则4.3 && 和 & 基本规则4.4 && 和 & 使用区别4.5 || 和 | 基本规则4.6 || 和 | 使用区别 5. ! 取反 基本规…

Jmeter实现性能测试--高并发

高并发场景 高并发场景是指系统在相对短时间内面对大量用户同时访问的情况。这种场景常见于在线服务、电商平台、社交网络、金融交易等需要处理大量并发请求的系统。以下是一些典型的高并发场景&#xff1a; 在线购物活动&#xff1a; 在特定促销或购物节期间&#xff0c;电商…

Databend 开源周报第 124 期

Databend 是一款现代云数仓。专为弹性和高效设计&#xff0c;为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务&#xff1a;https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展&#xff0c;遇到更贴近你心意的 Databend 。 新增对 Delta 和…

智能优化算法应用:基于鼠群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于鼠群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于鼠群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.鼠群算法4.实验参数设定5.算法结果6.参考文献7.MA…

VBA之Word应用:利用代码统计文档中的书签个数

《VBA之Word应用》&#xff08;版权10178982&#xff09;&#xff0c;是我推出第八套教程&#xff0c;教程是专门讲解VBA在Word中的应用&#xff0c;围绕“面向对象编程”讲解&#xff0c;首先让大家认识Word中VBA的对象&#xff0c;以及对象的属性、方法&#xff0c;然后通过实…