Ember
Wins on native comments, offline discussion reading, privacy, mobile reach, and deliberate accessibility.
Two thoughtful clients with different definitions of “native.” Ember optimizes the act of reading; Ironside HN optimizes the full Hacker News workflow.
Ironside HN takes the breadth contest by one category. Ember concentrates its advantage around reading quality and cross-device use.
| Capability | Ember iPhone · iPad · Mac Catalyst | Ironside HN Native macOS 14+ |
|---|---|---|
| Platform reach | Winner iPhone, iPad, and Mac Catalyst |
Mac only |
| Mac-native fidelity | Adaptive Catalyst desktop layout | Winner Purpose-built macOS app with menus, tabs, and shortcuts |
| Comment rendering | Winner Native SwiftUI text with links, quotes, and code |
Enhanced HN HTML inside WKWebView |
| Thread loading & collapse | Winner One Algolia request; instant native collapse and collapse-all |
HN discussion page and web thread controls |
| Comment sorting | Default HN order | Winner Default, newest, oldest, or most replies |
| Offline discussions | Winner Viewed feeds, stories, and threads cached to disk |
No full feed or thread cache |
| HN account support | None, intentionally | Winner Login, signup, password reset, and Keychain session |
| HN participation | Read-only | Winner Vote, favorite, reply, submit, hide, and unhide |
| Official feed coverage | Winner Top, New, Best, Ask, Show, and Jobs |
All, Ask, Show, Jobs, Comments, and personal Threads |
| Discovery filters | Feed selection and search sort | Winner Content type, date range, hot/recent, and author |
| Search depth | Story search by relevance or recency | Winner Stories, comments, filtered content, and bookmarks |
| Saved stories | Tie Dedicated local library with offline metadata |
Tie Local, searchable, filterable bookmarks |
| Read tracking | Winner Visited-state dimming plus mark read/unread |
Not implemented |
| Article reader | In-app Safari with optional Reader mode | Winner Integrated WebKit with custom Readability mode |
| Article + comments split | Discussion detail with article handoff | Winner Article and comments side by side |
| Browser controls | Open in-app or in the default browser | Winner Ad blocking, pop-up blocking, find, history, zoom, progress |
| User profiles | Winner Native karma, bio, join date, and recent submissions |
Full HN profile webpage |
| Privacy posture | Winner Public APIs only; no account or tracking |
No indicated analytics; stores an HN session locally |
| Personalization | Winner First-run setup, default feed, themes, and six accents |
Appearance and manual text scaling |
| Installable distribution | Source release; no packaged binary asset | Winner Signed and notarized DMG |
| Automatic updates | Not implemented | Winner Sparkle update pipeline and appcast |
| Sharing | Tie Native ShareLink, copy, and browser handoff |
Tie Native ShareLink and browser handoff |
| Dependency footprint | Winner No third-party runtime dependencies |
Uses Sparkle for updates |
Accessibility is part of Ember’s product architecture. Ironside HN mostly inherits platform and web defaults, with manual zoom as its clearest advantage.
| Capability | Ember Accessibility-first implementation | Ironside HN System and web defaults |
|---|---|---|
| VoiceOver support | Winner Custom labels, hints, traits, and actions |
No substantial explicit implementation found |
| Story-row semantics | Winner Each story is announced as one coherent element |
Separate native and webpage elements |
| Comment text access | Winner Native selectable text and OS link behavior |
Web selection and WebKit accessibility tree |
| Dynamic Type | Winner System text sizes throughout the app |
Manual scale rather than system Dynamic Type |
| Accessibility-size layouts | Winner Comment indentation and layouts adapt at large sizes |
Uniform percentage-based scaling |
| Reduce Motion | Winner Loading and interface animation respond to the system setting |
No explicit support found |
| Color-independent status | Winner Icons, shapes, and text accompany color |
No deliberate system found |
| Color-blind support | Winner Dedicated mode and Differentiate Without Color detection |
No dedicated mode |
| Link identification | Winner Configurable underlined links |
Relies on webpage styling |
| Accessible onboarding | Winner Detects settings, enables matching options, explains changes |
No onboarding flow |
| Smart Invert & imagery | Winner Decorative imagery is hidden and protected from inversion |
No explicit handling found |
| Manual zoom controls | Follows system text preferences | Winner 75–150% slider plus standard Mac zoom shortcuts |
Wins on native comments, offline discussion reading, privacy, mobile reach, and deliberate accessibility.
Wins on account participation, filtering, browser tools, Mac-native productivity, distribution, and updates.