一个 clubhouse 的开源实现
NesHouse 是一个基于 Agora、LeanCloud 服务,使用 Alpine.js 、Bulma Css、NES.css 构建的前端项目,这个项目实现了一套基于 NES 风格的 clubhouse,你可以使用 NESHouse 来创建自己的线上直播间,也可以将其分享出去,邀请别人一起参与讨论。
如果你需要商业化版本的 NESHouse,可以访问这个 PDF 查看 NESHouse Pro 的具体信息
- 多聊天直播间支持
- 管理员权限
- 多主播同时发言
- 观众申请发言
- 管理员禁言主播
- 生成分享链接
管理员界面 - 聊天室 | 管理员 - 创建页面 |
---|---|
- 在 域名/admin.html 中输入房间名 & 用户昵称,创建一个新的房间
- 点击下方的 Log in to chat room as Administrator 以管理员身份登陆房间
- 复制输入框内的链接,分享给你的朋友,邀请他们加入房间。
- LeanCloud 国际版
- Agora.io 声网
- (非必需)Vercel
- HTTPS
- 注册一个 LeanCloud 国际账户,并创建一个项目,用于后续的项目配置
- 注册一个 Agora 声网账号,并创建一个项目,获取 AppID。创建项目时请选择调试模式,仅 APPID 鉴权。
- 从 LeanCloud 的应用后台 - 你使用的应用 - 设置 - 应用 Keys 中找到 AppID 和 AppKey,将其记录下来,以备后用。
- 从 LeanCloud 的应用后台 - 你使用的应用 - 存储 - 服务设置 中启用 Live Query
- 在 LeanCloud 的应用后台 - 你使用的应用 - 存储 - 结构化数据 ,并创建一个名为 RoomUser 的 Class。
- 将上面记录的声网的应用 AppID 和 LeanCloud 的 AppID 和 APPkey 填写到
js/config.js
顶部的配置中。 - 将修改好的文件部署到你自己的服务器上,并配置域名指向。
js/config.js
const AVAPPID = "" // LeanCloud AppID
const AVAPPKEY = "" // LeanCloud AppKey
const AVAPPURL = "" // LeanCloud api 自定义域名
const BASEURL = "" // 最终网页所在的路径,生成的分享链接会基于这个地址产生
const DEFAULT_TEXT = "Please contact <a href='mailto:[email protected]'>[email protected]</a> to Learn more" // 页面顶部展示的文字
const AGORAAPPID = "" // 声网服务的 AppID
如果你是用户,你可以通过上方的 issue 或 discussion 参与讨论,提出你的问题
如果你是开发者,你可以直接通过 Pull Request 提交你的修改。需要注意的是,你的修改将会以 AGPLv3 授权给其他开发者。
如果希望商业使用,请联系邮箱 [email protected] 或微信 ixiqin_com
了解商业授权以及独立部署版本