搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

ViceVerse-cz/Serein

效率与系统工具

用 Rust 与 egui 编写的原生 Discord 桌面客户端,面向希望替代 Electron 官方客户端的用户。

1,201
112
Rust
Apache-2.0
创建于 2 个月前

项目介绍

Serein 是一个第三方 Discord 桌面客户端,用 Rust 加 egui、wgpu 编写。它不使用 Electron,而是以单个原生进程直接连接 Discord 的 gateway 和 REST 端点,使用你已有的普通账号登录。目标用户是 macOS、Linux、Windows 上在意内存占用和 CPU 开销、又需要原生语音、视频与屏幕共享的 Discord 用户。

除聊天外,功能覆盖语音频道与私信通话、屏幕捕获、论坛频道与帖子线程、服务器管理(角色、审计日志、邀请、Webhook、贴纸)、多文件批量上传、GIF 与 Twemoji 选择器、视频播放、插件与主题商店以及快捷键。README 的功能矩阵逐项标注了已实现或仅部分实现。

README 还给出了一组 macOS 实测:在浏览频道同时加入语音频道并以 60 FPS 共享屏幕的场景下,Serein 约占 129.7 MB 内存、8.1% CPU,官方客户端约 1,178.4 MB(7 个进程)、22.8% CPU。这是单一场景、单一机器的数据,不能当作通用性能结论。

快速使用

预编译版本发布在 Releases 页面。按平台选择安装方式:

  • Linux: 推荐 Flatpak,执行 flatpak install --user https://viceverse-cz.github.io/Serein/flatpak/serein.flatpakref,然后用 flatpak run cz.viceverse.serein 启动;也可使用签名软件源、Gentoo overlay、Nix flake 或 AppImage。
  • Windows: 下载 Windows-X64-Setup.exe 或 Windows-ARM64-Setup.exe 运行,按用户安装、不需要管理员权限;也可选便携 zip 或 PowerShell 安装脚本。
  • macOS: 执行 brew tap ViceVerse-cz/serein 和 brew install --cask serein,或下载 .zip 后将 Serein.app 拖入 /Applications。

首次启动时在内嵌的 Discord 登录页完成登录(支持邮箱密码、二维码和 MFA)。会话令牌默认保存在系统凭据库中。

从源码构建需要 Rust 1.99.1 以及 平台支持文档 列出的工具链(macOS 的 Xcode 命令行工具;Linux 的 GCC/Clang、ALSA 头文件、GTK 4、WebKitGTK 6.0 和 Vulkan;Windows 的 Visual Studio C++ 工具与 WebView2)。然后执行:

# 用合成数据体验界面,无需登录
cargo run --locked --features demo -- --demo

# 运行正式客户端
cargo run --locked

cargo xtask check 会运行工作区的格式化、Clippy、测试和策略检查。

使用约束

  • Serein 是非官方客户端,未获 Discord 认可。用普通账号直接访问 gateway/REST 而非官方 OAuth2/bot API,违反 Discord 服务条款,存在账号被封禁的风险,README 对此有明确警告;使用前建议阅读兼容性说明和认证指南。
  • 本地 SQLite 存储的历史、草稿和设置虽然有容量上限,但应用不对其加密。只有认证令牌进入系统凭据库,密钥环失效时可显式切换到明文存储。
  • 国际化只做了部分支持,完整的输入法支持和双向文本编辑尚未验证。
  • 平台差异:Linux 原生屏幕捕获标注为未验证;macOS 的 Nix 构建未签名、未公证;Nix 安装不走应用内更新。
  • AppImage 依赖宿主机的 GTK4 与 WebKitGTK 6.0 库。
  • 代码采用 MIT 或 Apache-2.0 双许可证。

HotRepo 点评

站内唯一记录是 2026-11-09 的 Rust 语言日榜:Serein 当天排名第 12,新增 36 Star,仓库总计 1,173 Star、110 Fork。这只是语言榜上的一次快照,并非全语言日榜,因此能说明 Rust 社区当天的关注度,但不足以判断趋势。真正支撑这份关注的是工程量:多 crate 工作区把协议、网关、语音、存储和 UI 分开,并针对各操作系统实现捕获与硬件解码。README 明确写出服务条款风险,打算安装的人应把这部分和资源节省放在一起权衡,而不只看内存数字。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。

相关推荐

  1. RshaCuDeVidro/larperCord一个面向 Linux 和 Windows 的原生 Discord 客户端,低内存占用且整个界面由主题文件控制。Zig219
  2. emilk/egui给需要界面的 Rust 开发者,尤其是游戏和工具内嵌 UI 场景,一个跨桌面与 Web 的即时模式 GUI 库。Rust31,719
  3. crmne/zapfast面向 Linux、macOS 和 Windows 的原生 WhatsApp 桌面客户端,不依赖浏览器内核。Rust2,291
  4. ELY-Open-Source/ElyOffice给想要本地办公、不要账号和云端的人,一套离线优先的办公套件加邮件客户端。Rust970
  5. Flowseal/zapret-discord-youtube为 Windows 用户提供多种 DPI 绕过策略,用于恢复 YouTube、Discord 和 Telegram 的访问。Batchfile35,752