| 摘要 | Dumbcourse 在 /dumb 下添加了一个轻量级的、对旧版浏览器友好的 Discourse 用户界面,专为 D 键导航、小屏幕和旧版 Android WebViews 设计,在这些环境下标准 Discourse UI 可能过于沉重。 |
|
| 仓库链接 | https://github.com/TripleU613/dumbcourse | |
| 安装指南 | 如何在 Discourse 中安装插件 |
功能
- 在同一 Discourse 域名的
/dumb处提供一个最小化的单页应用 (SPA) - ES5 / 无构建步骤;特意保持 DOM/JS/CSS 最小化,以兼容旧版浏览器和 WebViews
- 使用同源 Discourse JSON 端点和标准的 Discourse 会话 cookie
- 主题列表:
latest、new、top、unseen、hot、my,以及分类 - 分类视图:
/dumb/c/:slug/:id - 主题阅读和发帖(回复/引用/反应)
- 搜索和基本个人资料视图
- D 键友好的导航,具有可聚焦的 UI 元素
配置
-
安装插件
- 在
containers/app.yml的hooks -> after_code下添加仓库地址,然后重建容器。
- 在
-
启用它
- 前往 管理 → 插件 → Dumbcourse
- 启用
dumbcourse_enabled
-
选择默认设置
- 设置默认主题和默认着陆视图(参见下文的设置)。
-
验证
- 访问:
https://YOUR_FORUM_DOMAIN/dumb - 匿名用户应登陆
/dumb/login - 已登录用户应看到配置的默认视图
- 访问:
截图
状态 / 已知限制
该项目目前处于 Beta 阶段(初始实现速度很快),因此可能会有一些粗糙之处。欢迎贡献和代码审查。
当前已知的差距/待解决问题:
- 注册 + 验证码 (CAPTCHA): 账户创建依赖于 Discourse 的标准注册流程,但验证码的行为可能因站点配置而异。
- 安全审查: 简化的 UI 不应绕过 Discourse 权限,但尚未进行彻底的安全审查。请报告任何疑虑或可疑行为。
- 版主/管理员 UX: 目前版主和管理工具非常有限;安全地扩展这部分功能已在路线图上。
- 触摸 + D 键交互: 触摸输入可能会与某些设备上的焦点导航冲突;计划进行改进。
- 链接共享:
/dumb提供了一个替代 UI,这就引发了在“dumb”用户和标准用户之间共享规范链接的问题。一致的方法仍在完善中。
致谢
特别感谢 @ars18 (GitHub: https://github.com/alltechdev) 的重要贡献以及帮助启动最初的想法。
设置
| 名称 | 描述 |
|---|---|
dumbcourse_enabled |
Dumbcourse 的主开关。 |
dumbcourse_default_theme |
/dumb 的默认主题(dark / light)。 |
dumbcourse_default_view |
默认着陆视图(latest / new / top / unseen / hot / my / categories)。 |
dumbcourse_sidebar_link_enabled |
在侧边栏添加一个指向 /dumb 的链接。 |





