起源
作为一个比较“老派”的重度游戏玩家,我日常玩的最多的游戏是《魔兽世界》、《CS》以及《GTA》,他们中的 UI 有一个令我印象深刻的点:环形的技能/武器菜单。

对此我还做了一些粗浅的研究,这种菜单又叫径向菜单(Radial Menu),是一种游戏中很常用的菜单类型,Steam 官方甚至还有 API 和文档 [Steamworks 文献库]。它具有外观好看,功能实用的特点,而且操作起来简单又迅速,我个人非常喜欢这类设计。
于是作为开发者的我不禁在想,如果我能在 macOS 上也用上类似功能,是不是也能提升我的工作效率?
初版
事实证明,编码很像写小说,当灵感来袭时,想法源源不断,很难停止。最初我的计划是创建一个简单的 MVP,然后在 Figma 中进行 UI 设计和渲染,然后发出来测试一下市场的反应。
但当我意识到我已经远远超出了最初的计划时,已经太晚了。在不知不觉中,我已经准备好了一个“几乎已经可以运行“的应用程序了。它的功能也很简单而直接:按下一个触发键后,就能在鼠标位置展示一个圆环,并且在圆环中可以配置多个区块,每个区块对应一个 APP,只要将鼠标滑向对应的 APP,就能快速启动它。

对程序员来说,写代码不算什么,真正的考验往往出现在最后两步:为 APP 起一个好名字,并为它画出一个合适的图标。
名字和图标
名字的问题很快得到了解决,作为天文爱好者的我,感觉这个环形菜单就像土星环一样环绕在鼠标周围,所以我将其命名为:OrbitRing(轨道环)。
有了名称,图标也终于得到了解决,在设计师朋友的帮助下,我给 APP 添加了这样的图标:

简约中带一些金属质感,让我想起黑暗的宇宙,和环形的宇宙空间站。
发布
作为一个典型的 i 人,虽然我从事开发工作已有多年,也发布过好几个 iOS 应用,但在上线自己的作品时,我依旧习惯于“悄悄地”把它抛出去,然后躲在角落里观察大家的反应。出乎意料的是,在 Reddit 和 Product Hunt 上,我收获了不少积极的反馈,这也让我更有信心继续打磨和迭代这款应用。

在最初发布后的大半年里,我为 OrbitRing 推送了多次更新。过程中,用户的反馈发挥了极大的作用,也让我意识到:同样的工具,不同用户会有完全不同的使用方式。正因如此,我一直努力提升应用的可定制性,希望无论是普遍需求,还是小众习惯,都能在 OrbitRing 中找到合适的解决方案。

超越 APP 之外
在 OrbitRing 的最初设计中,它只支持快速启动应用,因为这正好满足了我个人的需求。但架不住用户们的呼声,我最终还是做出了一个违背祖宗的重大决定—— 扩展可打开的类型,新增了对网址、文件和文件夹的支持。
现在的 OrbitRing 配置窗口中,我们可以配置四种类型的项目,常用的文件和网站也能快速打开了。




回到现在
随着 macOS 26 的发布,OrbitRing 也紧随苹果的步伐,带来了全新的 UI 更新:适配了 macOS 26 的液态玻璃效果,无论是圆环还是配置页面,都焕然一新。希望你会喜欢这次的改进。
看到这里大家可能会吐槽这是磨砂玻璃不是液态玻璃,我也想问问库克,同样的 API 在不同的平台上差距咋这么大捏~


大家可能关心的问题
在这个几乎万物皆订阅的时代,我还是想让 OrbitRing 走一条更简单的路:免费试用 7 天 + 一次性买断。买下之后,它就是你的,不必再担心每月续费。
作为一款 Local First 的本地工具,OrbitRing 天然就不适合订阅制。我希望它能成为你长期可靠的助手,而不是一笔持续的负担。它的定价或许不是最低,功能和界面也未必最花哨,但我相信它的价值——因为我自己每天都离不开它。
这是 OrbitRing 的第一年,我更期待的是,能和大家一起见证它成长,陪伴它走过更多年。
后记:我会在不少平台写东西,但在少数派写作最自在。没有太多限制,不用发布前用工具审查关键词,也不用担心“写太长没人看”,能尽情表达自己。感谢少数派,给了我一个舒服的创作角落。