Hacker News
Latest
CERN rebuilt the original browser from 1989
2026-02-20 @ 23:19:12Points: 71Comments: 20
Across the US, people are dismantling and destroying Flock surveillance cameras
2026-02-20 @ 22:50:35Points: 106Comments: 19
A16Z partner says that the theory that we'll vibe code everything is ' wrong'
2026-02-20 @ 22:47:58Points: 31Comments: 17
I hate AI side projects
2026-02-20 @ 22:03:00Points: 58Comments: 66
Turn Dependabot Off
2026-02-20 @ 21:25:41Points: 250Comments: 70
Show HN: Mines.fyi – all the mines in the US in a leaflet visualization
2026-02-20 @ 21:22:27Points: 49Comments: 31
Phil Spencer is exiting Microsoft as AI executive takes over Xbox
2026-02-20 @ 21:05:44Points: 71Comments: 48
OpenScan
2026-02-20 @ 20:47:48Points: 91Comments: 3
I found a Vulnerability. They found a Lawyer
2026-02-20 @ 19:19:58Points: 324Comments: 152
Every company building your AI assistant is now an ad company
2026-02-20 @ 18:55:15Points: 87Comments: 43
Wikipedia deprecates Archive.today, starts removing archive links
2026-02-20 @ 18:42:21Points: 285Comments: 154
Archive.today is directing a DDoS attack against my blog - https://news.ycombinator.com/item?id=46843805 - Feb 2026 (168 comments)
Ask HN: Weird archive.today behavior? - https://news.ycombinator.com/item?id=46624740 - Jan 2026 (69 comments)
Facebook is cooked
2026-02-20 @ 18:25:07Points: 703Comments: 422
Blue light filters don't work – controlling total luminance is a better bet
2026-02-20 @ 18:14:13Points: 115Comments: 148
Uncovering insiders and alpha on Polymarket with AI
2026-02-20 @ 18:11:02Points: 74Comments: 44
Making frontier cybersecurity capabilities available to defenders
2026-02-20 @ 18:03:19Points: 93Comments: 49
Keep Android Open
2026-02-20 @ 17:58:51Points: 1052Comments: 407
Lil' Fun Langs
2026-02-20 @ 17:34:12Points: 89Comments: 11
Legion Health (YC) Is Hiring Cracked SWEs for Autonomous Mental Health
2026-02-20 @ 17:02:15Points: 1
Trump's global tariffs struck down by US Supreme Court
2026-02-20 @ 15:27:38Points: 1228Comments: 1002
Child's Play: Tech's new generation and the end of thinking
2026-02-20 @ 14:48:34Points: 339Comments: 211
I found a useful Git one liner buried in leaked CIA developer docs
2026-02-20 @ 14:03:06Points: 598Comments: 214
Show HN: A native macOS client for Hacker News, built with SwiftUI
2026-02-20 @ 14:02:05Points: 169Comments: 131
GitHub: https://github.com/IronsideXXVI/Hacker-News
Download (signed & notarized DMG, macOS 14.0+): https://github.com/IronsideXXVI/Hacker-News/releases
Screenshots: https://github.com/IronsideXXVI/Hacker-News#screenshots
I spend a lot of time reading HN — I wanted something that felt like a proper Mac app: a sidebar for browsing stories, an integrated reader for articles, and comment threading — all in one window. Essentially, I wanted HN to feel like a first-class citizen on macOS, not a website I visit.
What it does:
- Split-view layout — stories in a sidebar on the left, articles and comments on the right, using the standard macOS NavigationSplitView pattern.
- Built-in ad blocking — a precompiled WKContentRuleList blocks 14 major ad networks (DoubleClick, Google Syndication, Criteo, Taboola, Outbrain, Amazon ads, etc.) right in the WebKit layer. No extensions needed. Toggleable in settings.
- Pop-up blocking — kills window.open() calls. Also toggleable.
- HN account login — full authentication flow (login, account creation, password reset). Session is stored in the macOS Keychain, and cookies are injected into the WebView so you can upvote, comment, and submit stories while staying logged in.
- Bookmarks — save stories locally for offline access. Persisted with Codable serialization, searchable and filterable independently.
- Search and filtering — powered by the Algolia HN API. Filter by content type (All, Ask, Show, Jobs, Comments), date range (Today, Past Week, Past Month, All Time), and sort by hot or recent.
- Scroll progress indicator — a small orange bar at the top tracks your reading progress via JavaScript-to-native messaging.
- Auto-updates via Sparkle with EdDSA-signed updates served from GitHub Pages.
- Dark mode — respects system appearance with CSS and meta tag injection.
Tech details for the curious:
The whole app is ~2,050 lines of Swift across 16 files. It uses the modern @Observable macro (not the old ObservableObject/Published pattern), structured concurrency with async/await and withThrowingTaskGroup for concurrent batch fetching, and SwiftUI throughout — no UIKit/AppKit bridges except for the WKWebView wrapper via NSViewRepresentable.
Two APIs power the data: the official HN Firebase API for individual item/user fetches, and the Algolia Search API for feeds, filtering, and search. The Algolia API is surprisingly powerful for this — it lets you do date-range filtering, pagination, and full-text search that the Firebase API doesn't support.
CI/CD:
The release pipeline is a single GitHub Actions workflow (467 lines) that handles the full macOS distribution story: build and archive, code sign with Developer ID, notarize with Apple (with a 5-retry staple loop for ticket propagation delays), create a custom DMG with AppleScript-driven icon positioning, sign and notarize the DMG, generate an EdDSA Sparkle signature, create a GitHub Release, and deploy an updated appcast.xml to GitHub Pages.
Getting macOS code signing and notarization working in CI was honestly the hardest part of this project. If anyone is distributing a macOS app outside the App Store via GitHub Actions, I'm happy to answer questions — the workflow is fully open source.
The entire project is MIT licensed. PRs and issues welcome: https://github.com/IronsideXXVI/Hacker-News
I'd love feedback — especially on features you'd want to see. Some ideas I'm considering: keyboard-driven navigation (j/k to move between stories), a reader mode that strips articles down to text, and notification support for replies to your comments.