frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: Ember, a native iOS Hacker News reader I built around accessibility

https://github.com/DatanoiseTV/ember-hackernews
87•sylwester•8h ago
I read HN on my phone every day and never really settled on a reader, so I wrote my own and finally tidied it up enough to put out there.

It's plain SwiftUI with no third-party dependencies. A few things I spent the most time on:

Comments are parsed and drawn as native text instead of being dumped into a web view. Links, italics, quotes and code blocks behave like the rest of the OS, text selection works, and threads collapse instantly. The whole comment tree comes back from the Algolia API in a single request, which felt a lot nicer than walking the Firebase API node by node.

Accessibility. Nothing depends on color on its own, so points, read state and selection all carry a shape or an icon too. VoiceOver reads each story as one coherent element with proper actions, Dynamic Type and Reduce Motion are respected, and there's a color-blind mode. The first-run setup actually looks at your device's accessibility settings, switches on the matching options, and tells you what it changed instead of making you hunt for them.

Then the usual things you'd expect: Top/New/Best/Ask/Show/Jobs, search, saved stories, read tracking, an in-app reader, light and dark, and a handful of accent colors.

It only talks to the public HN APIs, there's no account and nothing is tracked. Source and screenshots are in the repo.

I'd most like feedback on the comment rendering and the accessibility choices, since those were the parts I cared about getting right. Happy to answer anything about how it's put together.

Comments

gavinmckenzie•8h ago
Well done. As a colour blind person (and iOS developer) I am thrilled anytime an app doesn’t rely on colour cues alone. I’ve used Hack and Octal but I am going to give your app a try.
ios-contractor•7h ago
Looks great. Does it support pinch zoom like webpage hn does
UqWBcuFx6NV4r•1h ago
Needing to resort to pinch and zoom for everything is an indicator of bad accessibility. HN “supporting” pinch and zoom is more like… HN not being responsive and/or being good about dynamic text size.
newdee•7h ago
Looks great, do you plan on publishing to the AppStore?
sylwester•7h ago
If it is possible and Apple accepts the app.
roger_•7h ago
Any chance of HN getting angry about this, à la Reddit?
rkagerer•6h ago
Ok. I don't need or want this.

Doesn't mean others can't find it useful. e.g. I bet some portion of users would appreciate Dark mode without resorting to CSS tweaks. /rant

altairprime•4h ago
(Perhaps they meant as in Is This At Risk of the Apollo Apocalypse rather than as in behaving more like Reddit?)
UqWBcuFx6NV4r•1h ago
* HN reader apps have existed forever.

* There is a public API.

^ The incentives for “getting angry” aren’t there, like they were for Reddit.

Think critically.

charrondev•7h ago
I love to see an open source implementation.

I’ve been using [Octal](https://apps.apple.com/us/app/octal-for-hacker-news/id130888...) for a while now but it’s not open source.

Would you be opposed to a pull request adding login/posting support? I think the way it works in Octal is webview for login, snatching the cookies out of the webview, then using the same posting endpoints as the website with the cookie.

shelled•6h ago
HN is quite nice inside a desktop browser, but mobile browsers are a different story altogether. But even there, it fares slightly better than old.reddit.com. So looks like I should dust off that xcode.
Cider9986•5h ago
I disagree it works great in Vanadium.
_dharmik_•6h ago
Are you planning to release Android version as well ?
ofcrpls•6h ago
I've been using Octal on iOS and https://github.com/IronsideXXVI/Hacker-News on Mac that was showcased here 4 months ago.

Got to give you kudos for the Accessibility enablement though - while some of it is baked-in support, it’s worth appreciating your work in whittling down whatever else can be supported.

Here is a comparison for the two on Mac, if you're interested. https://gq6o9uxicyzuw8es6qxe78bnml9wc3re.pastehtml.dev/#core

kamyarg•5h ago
Could not find the appstore link, is it published there?
lemming•4h ago
One thing that would be useful in the readme is instructions on how to install the built app on a phone, for those of us who don’t do iOS development.
cadamsdotcom•4h ago
Looks great!

It seems you’re nervous about getting permission to show what you made to the world from Apple.

May I suggest you encourage people who want to use the app to get their own subscription and build and install it themselves, or consider AltStore/SideStore. Or go via TestFlight with your own monetization built in.

No one should need permission to ship from a trillion dollar company.

UqWBcuFx6NV4r•1h ago
This is a long bow to draw just for an excuse to get on your soapbox about Apple, especially talking to someone who has definitely heard it all before and has definitely formed their own view on this particular topic (and doesn’t need proselytising from you).
cadamsdotcom•42m ago
Only offering ideas, people are free to ignore them.

You never know - OP might not have thought of these options.

pi-victor•3h ago
i've been using hackfeed, it does the job.

make this available on testflight, this looks great, would love to daily drive it.

+1 for the accessibility features, great job!

Show HN: TownSquare, a tiny presence layer for websites

https://townsquare.cauenapier.com/
51•cauenapier•13h ago•18 comments

Show HN: Make PDFs look scanned (CLI or in the browser via WASM)

https://github.com/overflowy/make-look-scanned
86•overflowy•7h ago•41 comments

Show HN: StartupWiki – A Free Alternative to Crunchbase

https://startupwiki.tech/
153•shpran•9h ago•50 comments

Show HN: We post-trained a model that pen tests instead of refusing

https://www.argusred.com/cli
76•dk189•11h ago•33 comments

Show HN: My Windows XP portfolio with working Game Boy and iPod

https://mitchivin.com/
52•mitchivin•6h ago•26 comments

Show HN: Tiny – An interpeted dynamic langauge with inline Go native functions

https://github.com/confh/Tiny
33•confis•6h ago•5 comments

Show HN: Rocannon – Any Ansible module to MCP Tool, record sessions as playbooks

https://github.com/msradam/rocannon
2•msradam•54m ago•0 comments

Show HN: Microcrad – Micrograd Reimplemented in C

https://github.com/oraziorillo/microcrad
64•oraziorillo•3d ago•21 comments

Show HN: Ember, a native iOS Hacker News reader I built around accessibility

https://github.com/DatanoiseTV/ember-hackernews
87•sylwester•8h ago•20 comments

Show HN: Codeflowmap – map a codebase's read/write/auth data flows

https://github.com/man-consult/code-mapper
3•brian-m•1h ago•0 comments

Show HN: Domphy – plain-object UI for tool apps, AI-correctable output

3•khanhhuunguyen•2d ago•2 comments

Show HN: FERNme – agent memory that updates with ~zero LLM calls

https://github.com/mirkofr/FERNme
3•mirkofr•2h ago•0 comments

Show HN: HN Game Stories – mini-documentary of games that hit the front page

https://video.intellios.ai
2•coolwulf•2h ago•0 comments

Show HN: TLA+ Process Studio

https://tlaplus-process-studio.com/?example=meeting-lifecycle
6•uptodatenews•2h ago•0 comments

Show HN: Onsight: pay a local to photograph any spot in San Francisco, on demand

https://onsight.photo/san-francisco
7•pro_methe5•3h ago•2 comments

Show HN: Notedog – Git-friendly portable Markdown journal, edit from a laptop

https://notedog.run/
4•hibariya•3h ago•0 comments

Show HN: Criterion Closet as a website – pull any of 1,247 films off the shelf

https://the-criterion-closet.vercel.app
19•olievans•12h ago•7 comments

Show HN: GitGauge – A Way to Try Tell If a Repo Is Authentic

https://github.com/Davey2Waveyy/gitgauge
4•davey2wavey•3h ago•1 comments

Show HN: LoopFlow – loop engineering for Claude Code

https://github.com/faisalishfaq2005/loopflow
3•faisalishfaq•4h ago•1 comments

Show HN: Talos – Open-source WASM interpreter for Lean

https://github.com/cajal-technologies/talos
100•mfornet•2d ago•27 comments

Show HN: Metiq: a real time 3D globe for 100 public datasets

https://metiq.space
142•rakeda•4d ago•42 comments

Show HN: MiniPCs.zip (charting the pareto frontier of MiniPCs)

https://minipcs.zip
3•yathern•5h ago•0 comments

Show HN: Persona.js – a vanilla-JS agent UI library with native WebMCP (MIT)

https://www.persona-chat.dev/
10•becomevocal•6h ago•12 comments

Show HN: Gerrymandle - Daily puzzle game where you redraw electoral districts

https://gerrymandle.cc/
225•realmofthemad•2d ago•77 comments

Show HN: An ASCII 3D Rendering Engine

https://glyphcss.com
9•apresmoi•6h ago•5 comments

Show HN: An n8n alternative where coding agents build the workflows, not humans

https://velane.sh/
4•abhishekraj272•6h ago•0 comments

Show HN: Cody – Voice control for Neovim using its own commands, LSP

https://github.com/juancgarza/cody
3•jcgr•7h ago•0 comments

Show HN: Are You in the Weights?

https://www.intheweights.com/
457•turtlesoup•2d ago•241 comments

Show HN: Tiny.Place – AI Social network for orchestration, payments & jobs

https://github.com/tinyhumansai/tiny.place
4•enamakel•9h ago•3 comments

Show HN: Quikdown – 17 KB bidirectional Markdown parser and rich-fence editor

https://github.com/deftio/quikdown
2•deftio•9h ago•1 comments