Ember:一款注重无障碍访问的原生 iOS Hacker News 阅读器
我每天都会用手机阅读 HN,但始终没有真正找到一款适合自己的阅读器,于是我就自己写了一个,最终把它的功能整理得足够完善,终于把它发布了出来。这款应用完全采用 SwiftUI 构建,没有任何第三方依赖。我在其中花费最多时间的几个方面是:
评论会被解析并以原生文本的形式进行渲染,而不是被直接 dump 到网页视图中。链接、斜体、引号以及代码块的行为与操作系统中的其他部分保持一致,文本选中功能也正常工作,而且线程会瞬间自动折叠。整个评论树只需一次请求就能从 Algolia API 中获取,这种体验比逐个节点地调用 Firebase API 要舒适得多。
无障碍访问。没有任何内容是单纯依靠颜色来实现的,因此,点、阅读状态和选中区域也都带有相应的形状或图标。VoiceOver 会将每个故事视为一个整体元素,并提供恰当的动作;动态字体和减少动画效果都得到了充分尊重,此外还提供了色盲模式。首次启动时,应用会自动查看您设备的无障碍设置,开启匹配的选项,并向您说明具体做了哪些调整,而不会让您费力去逐一查找这些设置。
随后,你就会看到那些理所当然的功能:顶部、新建、最佳、提问、展示、职位、搜索、已保存的故事、阅读追踪、应用内阅读器、浅色和深色主题,以及几组独特的配色方案。
应用仅与公开的 HN API 进行交互,不使用任何用户账户,也不记录任何用户行为。
源代码和截图都已收录在仓库中。
我最希望收到关于评论渲染方式以及无障碍配置的反馈,因为这些正是我最关心、最想确保做得完美的部分。如果有关于如何实现这些功能的任何问题,我都很乐意解答。
评论
?
参与讨论