TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: I developed a native macOS Hacker News client

188 pointsby goranmoominalmost 4 years ago

23 comments

goranmoominalmost 4 years ago
Hello, I’m the developer. Didn’t expect a Show HN post to go into a second—chance pool — I woke up an hour ago to find that my app was trending on HN.<p>I developed this b.c. I found that I didn’t like HN mixed with other work&#x2F;school related tabs, and realized that a separate app would be great for me. I believe that apps should use the most native-like UI possible — especially Cocoa on macOS, so I aimed to be the most ‘Mac-assed’ HN client possible.<p>Unfortunately the current app is in fact pretty unpolished — it’s in a usable state, but there’s a lot of missing features that one would expect from a ‘full-featured’ HN client. Probably a bunch of unknown bugs as well :-(. I would very appreciate any suggestions on feature additions or simple bug reports. Thanks!
评论 #27926414 未加载
评论 #27925658 未加载
评论 #27925401 未加载
评论 #27926314 未加载
Naacalmost 4 years ago
Does the Algolia hackernews api ( the specific API this client uses ) still require you to query in a tree like fashion, every comment item id if you want an entire page of comments?<p>Its extremely inefficient, to the point where I have a better time curling the HN web page and piping it through python beautifulsoup<p>Regarding a native app vs the using the HN website. The HN website I think is pretty ideal for the type of content its displaying, a native app doesn&#x27;t give you much over having a HN tab open. I guess only if you want to read HN but not have a web browser open? But how often does that happen?<p>The only benefit I see from a native app ( and why I use one on Android ) is the ability to save articles and comments for offline reading, say, when I get on a plane.
评论 #27925262 未加载
评论 #27925153 未加载
评论 #27925150 未加载
geoahalmost 4 years ago
Thanks for sharing this. It looks really great and pretty minimal which I personally love. The main thing I&#x27;m missing from this would be read&#x2F;unread indicators on stories.<p>A roadmap of planned features would be nice or some tickets that other people could help with.<p>I&#x27;m not sure how much time you plan on spending this, but I&#x27;d personally probably be willing to buy a version of this if it was able to do notifications on replies and similar features hn lurkers might want. Other interesting paid features could be read-later list, favourites, cross device syncing of read indicators and lists, etc. If you don&#x27;t wanna deal with paid features maybe consider enabling the github sponsor feature so people could optionally pitch-in.
评论 #27925192 未加载
harisaminalmost 4 years ago
This is great! I built a native. macOS client that I actually sold in the AppStore a while ago. It did everything was native except rendering of the article but I was just using plain web view for that part. The pain was keeping but synced with changes on HN. I still have a personal build that I use on a daily basis.<p>I still have the landing page up which warning, looks awful on mobile <a href="https:&#x2F;&#x2F;mackernews.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;mackernews.com&#x2F;</a><p>But congrats! I stopped selling my client and it’s starting to show age for my personal use too. Will check this out. Do you have voting and commenting working? That’s one thing I miss the most that stopped working on my client.
leecbalmost 4 years ago
Very happy to see a &quot;mac-assed&quot; app!<p>My only complaint so far is that I can only see about 12 items in the app on one screen, vs the whole front page in a browser. Adds a lot more scrolling.
评论 #27925377 未加载
SavantIdiotalmost 4 years ago
This raises a question I&#x27;ve always wondered:<p>How many of you prefer to run a native app rather than the web app?<p>Personally I hate installing things on my desktop if there is a website because it is just another thing I have to manage. (Even more so because I have multiple Windows, Mac and Linux boxes I&#x27;m bouncing around between during the day and rather just have sync&#x27;d Firefox bookmarks than have to install s&#x2F;w on each box.)<p>Am I in the minority, majority, both, neither?
评论 #27925303 未加载
评论 #27925166 未加载
评论 #27925305 未加载
评论 #27925268 未加载
评论 #27925689 未加载
评论 #27925358 未加载
评论 #27925133 未加载
评论 #27925276 未加载
评论 #27926088 未加载
评论 #27925638 未加载
评论 #27926333 未加载
评论 #27925265 未加载
评论 #27925158 未加载
评论 #27925199 未加载
评论 #27925181 未加载
评论 #27925679 未加载
评论 #27925086 未加载
评论 #27925299 未加载
npuntalmost 4 years ago
Looks good but needs text zoom (cmd =&#x2F;+ and cmd -).<p>I&#x27;d also consider the sidebar include &#x27;My Posts&#x27; and &#x27;My Comments&#x27;. Maybe it has those, but I couldn&#x27;t tell, as I turned off outgoing network access to firebase before logging in just to be on the safe side. Any reason you&#x27;re connecting to firebase rather than storing preferences locally? I&#x27;m worried about my HN credentials being stolen.
评论 #27925292 未加载
soheilalmost 4 years ago
Here is some code for a simple chrome ext for HN to show votes&#x2F;created date&#x2F;bio inline (just stick it in a chrome ext)<p><pre><code> function hackernews() { if (document.location.toString().indexOf(&#x27;news.ycombinator&#x27;) === -1) return; document.querySelector(&#x27;#hnmain td&#x27;).style = &#x27;background-color: #55b6f2;&#x27;; var i = 0; function render(user, html) { const div = document.createElement(&#x27;div&#x27;); let style = &#x27;cursor: text;overflow-y: scroll; height: 39px;position: absolute;border: 1px dotted #828282;width: 250px;margin-left: 250px;margin-top: -34px;background-color: #f6f6ef;&#x27;; div.innerHTML = html; const date = div.querySelectorAll(&#x27;tr&#x27;)[5].querySelectorAll(&#x27;td&#x27;)[1].innerHTML.split(&#x27;, &#x27;)[1]; const karma = div.querySelectorAll(&#x27;tr&#x27;)[6].querySelectorAll(&#x27;td&#x27;)[1].innerHTML; const about = div.querySelectorAll(&#x27;tr&#x27;)[7].querySelectorAll(&#x27;td&#x27;)[1].innerHTML; if (about.length &lt; 60) { style += &#x27;display: flex;flex-direction: column-reverse;margin-top: -39px;border: none;background-color: transparent;&#x27;; } div.innerHTML = about; div.style = style; user.querySelector(&#x27;.age&#x27;).innerHTML += date ? &#x27; &#x27; + date + &#x27; &#x27; + parseInt(karma).toLocaleString() : &#x27; (x_x)&#x27;; user.appendChild(div); } function next() { if (i &gt;= document.querySelectorAll(&#x27;.default .comhead&#x27;).length) return; const user = document.querySelectorAll(&#x27;.default .comhead&#x27;)[i++]; if (!user) return next(); const username = user.querySelector(&#x27;a&#x27;).href; if (username.indexOf(&#x27;soheil&#x27;) !== -1) return next(); const html = localStorage.getItem(username); if (html) { render(user, html); next(); return; } fetch(username) .then(res =&gt; res.text()) .then(res =&gt; { localStorage.setItem(username, res); render(user, res); setTimeout(next, 3000); }); } next(); }</code></pre>
c17ralmost 4 years ago
On my &quot;projects to do when I have lots more free time&quot; list is to make a Hacker News NNTP server. Read only, of course. Few details to work out (edits, polls, making comments, etc) but I think it could work. It would solve the &quot;what&#x27;s new in this thread&quot; problem.
评论 #27925163 未加载
floss_silicatealmost 4 years ago
“Mac-er News”, surely?
评论 #27924965 未加载
Jerry2almost 4 years ago
Excellent work! I really like the UI. I&#x27;ve been using some iOS app for HN because the UI offers easy and quick swipe-based upvotes and bookmarking. But your UI is more reminiscent of a mail app and that&#x27;s better suited for a desktop app. So kudos!
tyingqalmost 4 years ago
Looks nice. More screenshots would be appreciated...for example, how it displays italics, indented text &quot;code blocks&quot;, the limited amount of emoji&#x2F;utf-8 supported on HN, etc.
paulcolealmost 4 years ago
God I would love somebody to make one of these that could block specific users, linked sites, or topics&#x2F;keywords.
评论 #27926359 未加载
przemubalmost 4 years ago
I like that you kept at it for 1.5 year - it is inspiring me to pick up some projects I&#x27;ve half-started.
tailspin2019almost 4 years ago
Haven’t tried it yet but the screen shot looks great. Clean, simple and not over engineered.
caseyf7almost 4 years ago
Would love to see the ability to search and&#x2F;or export upvoted submissions&#x2F;comments.
grishkaalmost 4 years ago
Any chance for Mojave support? It currently requires Big Sur. Looks good on screenshots tho.
评论 #27925416 未加载
culopatinalmost 4 years ago
I’d love to see the HN crowd make this app amazing through PRs
sys_64738almost 4 years ago
Wouldn’t Vienna with the RSS feed give you the same?
zapzupnzalmost 4 years ago
I love seeing more Mac-assed apps.
adammengesalmost 4 years ago
Nice! This looks great.
blondinalmost 4 years ago
ah man... big sur and above only?
smoldesualmost 4 years ago
I feel like calling it &quot;Hacker News&quot; is a bit of a misnomer at this point, right? &#x2F;s
评论 #27926567 未加载
评论 #27926364 未加载