开源、可自部署的兴趣社群平台:以「据点」组织实时聊天频道与帖子分区。Cloudflare Workers 全栈,包含多实例联邦、历史归档与搜索、账号迁移和自建 SFU 语音。
Open-source, self-hostable community platform built around strongholds, realtime chat channels, and post sections, with signed federation, searchable archives, account migration, and self-hosted SFU voice.
首个正式版本已经完成单实例社区闭环:公开首页与据点目录、账号与通行密钥、实时聊天、Markdown 帖子、图片与表情、成员资料、私信、权限组、封禁和临时功能限制。开发主线另已包含联邦、归档搜索、账号恢复与迁移,以及 LiveKit 语音;这些变化需按下列部署文档配置服务与迁移数据库。
推荐通过 Overture 在线部署器 安装。链接已经预选 lsy-404/OMEW,无需本地工具链;安装器会列出将创建的 Worker、D1、R2、Durable Objects 与所需权限,再把 OMEW 部署到你自己的 Cloudflare 账户。
为了让服务器领主可以在 OMEW 内更新实例政策,Overture 会要求一个由部署者创建的长期 Cloudflare Account API Token,并作为 Worker Secret 保存。该令牌需要账户级 Workers Scripts 写权限,也能影响同账户中的其他 Worker,因此推荐为 OMEW 使用专用 Cloudflare 账户。
OMEW 使用标准 OIDC Authorization Code + PKCE 接入统一登录。Worker 环境变量 SSO_MODE 可设为 disabled(关闭,默认)、optional(允许 SSO 与本地登录)或 required(仅允许 SSO);启用时还需配置 SSO_ISSUER、SSO_CLIENT_ID,并把 SSO_CLIENT_SECRET 作为 Worker Secret 写入。OMEW 通过 Issuer 的 discovery 文档发现授权端点和签名密钥,不绑定任何特定站点。
SSO 首次登录会导入提供方的 nickname(未提供时使用 name 或用户名)。SSO_NICKNAME_LOCKED=0 允许此后在 OMEW 自定义昵称;设为 1 则在每次登录及会话刷新时跟随来源昵称,并禁止本地修改。服务器领主可在“统一登录”设置中调整此项。设置了 EMBED_ORIGIN 的 required 模式强制锁定昵称。
客户端会协商并支持 Refresh Token 轮换、RP-Initiated Logout、PAR、JAR/JARM、DPoP;其中 PAR 在提供方声明后默认启用,JARM 与 DPoP 通过 SSO_USE_JARM=1 / SSO_USE_DPOP=1 开启,JAR 还需要把 SSO_JAR_PRIVATE_JWK 的对应公钥登记到提供方。Device Authorization、CIBA、SAML 2.0 和 SCIM 2.0 的 provider/供应职责由共享协议提供方承担,OMEW 不把这些管理协议伪装成浏览器登录功能。
若只运行一个据点,可将 INSTANCE_MODE=single 与 ROOT_STRONGHOLD=<据点短名> 一起设置。该模式会把指定据点作为 / 的主内容,隐藏首页和据点导航栏,并拒绝其他据点的访问、创建、删除与转让;INSTANCE_MODE=multi 保留普通多据点首页。
个人设置可用区块由 PERSONAL_SETTINGS_SECTIONS 的 CSV allowlist 定义,可选值为 profile、security、appearance;未配置时全部启用,显式空值会隐藏个人设置入口。USE_BUILTIN_EMOTES、USE_BUILTIN_REACTIONS 与 USE_ART_ASSETS 是三个独立开关,因此可分别控制内置标准表情、内置反应图片和默认头像/背景/空状态插画;ENABLE_EMOTES 与 ENABLE_REACTIONS 仍分别是两项功能的总开关。
- 项目书 v0.2 —— 设计文档(架构、数据模型、联邦、成本)
- M0 协议规范草案 —— 事件信封、签名、联邦会话、迁移协议
- LiveKit 语音部署 —— 本地开发、自部署 SFU、Worker 配置与真实音轨验收
- 联邦与账号迁移 —— 对端信任、订阅、签名和迁移操作
- 归档与备份恢复 —— 历史分页、全文搜索、快照和灾难恢复
- 账号验证与恢复 —— Email Service、Turnstile 与运维重置
开发主线已实现 M2–M7 的签名、归档、帖子联邦、频道会话、逐边迁移和 SFU 语音,以及邮箱验证、密码恢复和注册 Turnstile。语音和邮件的线上启用需要部署者配置对应服务。
OMEW 软件代码采用 AGPL-3.0-only,包括商业使用在内均依照 AGPL 执行。
OMEW Logo、favicon 与 Mew 官方美术不属于 AGPL,仅依照《OMEW 资产使用条款》授权用于非商业部署。仅接受无对价的纯自愿捐助不视为商业使用;捐助最多可获捐助头衔或经本人同意展示身份,众筹不属于纯捐助。符合条款的非侵入式广告仅可覆盖必要服务成本。带有其他收入或商业行为的部署必须移除或替换全部 Logo 与 Mew 官方美术资产。
stamp-* 第三方贴纸未获得仓库可转授的许可,不属于上述非商业授权;使用或分发前须自行取得许可或删除。详细来源与边界见 Mew 资产 NOTICE及 Logo NOTICE。