问HN:有没有人对一个原生的Qt/C++ Discord客户端感兴趣?

5作者: txtsd9 天前原帖
我正在用C++和Qt 6构建一个名为kind的第三方跨平台Discord客户端(kind并不是Discord)。没有使用Electron,也没有网页封装。这是一个真正的原生应用,支持Windows、macOS和Linux。 用户界面总是能够瞬间加载。在第一次加载时,内容的出现速度与Discord的网络响应相当。在后续加载中,所有内容都来自缓存,并在后台与REST进行验证。它的速度就像打开一个纯文本文件一样快。 在我开始时,这个项目的进展比我预期的要快。目前已实现的功能包括:带有指数退避和重连机制的网关、每个路由都有速率限制的REST、支持异步读写的SQLite缓存、完整的Discord权限解析,以及一个可组合的块渲染器,能够处理所有Discord消息类型,包括嵌入、附件、反应、贴纸和组件。还有一个完整的Markdown解析器、带有内存LRU和磁盘持久化的异步图像缓存、一个在重启后仍能保持的未读和静音状态系统,以及370个通过的单元和集成测试。 语音功能是一个发布后的问题,Nitro功能也是。 除了Linux高级用户之外,这个项目真的有受众吗?我知道那里的痛点最为明显,但我真心好奇Windows用户是否会仅仅因为性能而选择切换,还是官方客户端在那里的表现足够好,以至于无所谓。
查看原文
I&#x27;ve been building a third-party cross-platform Discord client called kind (kind is not discord) in C++ and Qt 6. No Electron, no web wrapper. A proper native app for Windows, macOS, and Linux.<p>The UI always loads instantly. On first load, things take as long to appear as Discord&#x27;s network responses. On subsequent loads, everything comes from cache and is validated against REST in the background. It feels as fast as opening a plaintext file.<p>It&#x27;s further along than I expected when I started. What&#x27;s working right now: gateway with exponential backoff and reconnect, REST with per-route rate limiting, SQLite-backed cache with async reads&#x2F;writes, full Discord permission resolution, and a composable block renderer that handles every Discord message type including embeds, attachments, reactions, stickers, and components. There&#x27;s a full markdown parser, an async image cache with memory LRU and disk persistence, an unread and mute state system that survives restarts, and 370 passing unit and integration tests.<p>Voice is a post-launch problem. So are Nitro features.<p>Is there actually an audience for this outside of Linux power users? I know that&#x27;s where the pain is most acute, but I&#x27;m genuinely curious whether Windows users would switch for the performance alone or whether the official client is good enough there that it doesn&#x27;t matter.