NHacker Next
login
▲Show HN: Orange Juice – Small UX improvements that make HN easier to readoj-hn.com
50 points by latchkey 4 hours ago | 77 comments
Loading comments...
gitgud 3 minutes ago [-]
Another feature idea for you:

There’s an extension that I loved called “Proven” (now archived) which uses keybase.io proofs to show other proven accounts next to hn users

https://github.com/dschep/proven

Also about this:

> Mermaid Diagram Rendering

Honest question, how often are people posting raw mermaid diagrams in comments here?… I’ve never seen one

altairprime 2 hours ago [-]
Latchkey, would you be comfortable with HN adopting your dark mode styling as a user choice someday, if they came around to liking it? I really like it and I think it’s in the spirit of the site.
satvikpendem 2 hours ago [-]
I'm pretty sure that will never happen, as it would've happened already by now. People can and do already use custom CSS or Dark Reader for dark mode.
dang 1 hours ago [-]
Some things have taken us 15 years and then pow they happened
Imustaskforhelp 29 minutes ago [-]
Dang your comment excites me to think that Hackernews can have dark mode in future.

Aside from all of this AI hype, This is the feature I am most excited about xD!

Dang, genuine question but when you moderate/view Hackernews yourself, I suppose that you must yourself be using dark mode too correct? or do you view hackernews in light-mode?

latchkey 2 hours ago [-]
Or you can just use my extension, heh.
tomComb 2 hours ago [-]
That would be great! Please do.
latchkey 2 hours ago [-]
Thanks! A lot of it is AI with my own input, but I think it did a great job.

The code is all open source and people can do with it what they want. It is GPLv3, but I'd special license it to them as MIT without question.

zvr 11 minutes ago [-]
Well, if it's AI-generated, it's not really copyrighted by you and you cannot license it under GPL, since you did not write it.

Nice work, nevertheless, and useful!

latchkey 8 minutes ago [-]
It is AI assisted. I still wrote code and designed the core architecture of how it works.
altairprime 2 hours ago [-]
Ah, oh well. Thanks!
librasteve 30 minutes ago [-]
dang.

just shedding feedbin & reeder (paid)

it's 'hide read stories' for me & darkmode

latchkey 25 minutes ago [-]
Thanks! How about inline replies? That's my favorite.
cobbman 2 hours ago [-]
I want hacker news UX to stay as it is, mostly, but these are features I'd welcome.
dang 1 hours ago [-]
What features would you welcome?
riidom 34 minutes ago [-]
Also "unread comment highlighting" would be so good to have.
latchkey 21 minutes ago [-]
That was actually kind of a pain to implement. Refined didn't do it fully, mine covers a lot more edge cases.
riidom 18 minutes ago [-]
Can imagine!
latchkey 55 minutes ago [-]
All the features I've added to this extension.

But if you want to pick one: Inline replies.

Right now, I have to do a ton of magic to make that happen in order to work around your auth flow. Namely, pulling the auth token out of the other page and then having to keep track of it in session storage.

I could delete a whole lot of code if that was just built in.

dang 39 minutes ago [-]
By inline replies do you mean you click 'reply' and then a textbox opens in place?

The browser extension I wrote years ago, and which tomhow and I use for moderation, does this. I feel guilty about not having shared it a long time ago, but there just has never been time. Now that LLMs are starting to let me do things I've wanted to do for years, there's a chance I'll actually get to it before the sun dies.

latchkey 35 minutes ago [-]
Yes. Here is the implementation I've got... note that I also added links to the rules/guidelines in an attempt to help with that issue too, heh.

And yes... AI enables so many things.

https://oj-hn.com/assets/inline-reply-light.png

latchkey 2 hours ago [-]
Thanks. My feeling as well.
greenpizza13 2 hours ago [-]
I can't figure out how to toggle to Light Mode (maybe it uses the system setting?). HN is something I prefer to be in Light Mode but everything else in dark. Gonna remove until this is configurable.
latchkey 2 hours ago [-]
Defaults to system. The toggle is in the top right corner of the navbar next to your karma.
ipsum2 2 hours ago [-]
It looks pretty good! I'm using it now and its a meaningful improvement to the existing site.

Out of curiosity, why did you make a new Github account for the extension instead of developing it on your own account?

latchkey 2 hours ago [-]
Thanks!

Because I see this becoming bigger than me and a separate organization made sense. There is a super thin backend component right now too. There is the potential to also add in some extra features that require a server/db. I'm kind of inspired by the atuin model of things.

I've got a LONG list of features I'd like to implement over time.

2 hours ago [-]
xydac 2 hours ago [-]
its funny how us developers build varied UX, but nothing beats the simplicity of HN's default experience. quick and bloat free.
latchkey 2 hours ago [-]
That's the beauty of this extension, it keeps things simple.
Imustaskforhelp 3 hours ago [-]
I use refined Hacker news Extension.

https://github.com/plibither8/refined-hacker-news#highlights

It might be beneficial to tell me what the difference between these two can be? A lot of the features from my first glance (I can be totally wrong though) are within HN refined.

I would really appreciate a short summary of differences. Personally I am really happy by HN refined though so kudos to @plibither8

latchkey 2 hours ago [-]
Refined hasn't received an update in 4 years.

https://github.com/plibither8/refined-hacker-news/issues/135...

I used refined for years as well. Great product, but the underlying code was meh, and the author abandoned it. If you're using refined today, you're experiencing a lot of bugs as the HN DOM has changed over time.

I maintained my own fork for a long time but finally motivated myself to try out AI assisted coding and this is what came out of it. It isn't a port, it is a clean rewrite from the ground up.

I took every feature that I enjoyed from refined, re-implemented it from scratch, with a totally different architecture that allows much more control over the DOM and runs a whole lot faster.

I had AI write hundreds of of unit tests, so that we can make sure that bugs don't appear in the future. I also fixed a whole ton of edge cases along the way.

The entire deployment, all the way to the browser stores, is fully automated with CI/CD, so that we know that the supply chain is safe.

In other words, you might as well migrate. If there is something missing that you enjoyed, file an issue, or even better... a PR.

smcleod 23 minutes ago [-]
I tried contacting the author to see if he would open source it but he's gone dark and doesn't seem to really exist on the Internet anymore. So I grabbed the source code and modernised it, added additional feature and it's what I've been using ever since. I haven't open sourced it out of respect for the original author however the software does not actually have any license that prevents it so I have been considering what the best approach might be (any ideas?).
Leftium 19 minutes ago [-]
Are you referring to https://github.com/plibither8/refined-hacker-news?

It's MIT-licensed open source.

I've been using a fork (also MIT): https://github.com/alexferrari88/refined-hacker-news

latchkey 18 minutes ago [-]
Just use my extension?
Leftium 22 minutes ago [-]
I just tried switching from a slightly more updated fork of Refined Hacker News (2025)[1]

One thing I miss is the orange mark identifying the OP of a post.

[1]: https://github.com/alexferrari88/refined-hacker-news

latchkey 19 minutes ago [-]
I have that in there.

https://github.com/OrangeJuiceExtension/OrangeJuice/blob/b84...

Leftium 16 minutes ago [-]
Ah, I see it must be the bug mentioned in another thread: https://news.ycombinator.com/item?id=47695328

There was no [OP] label when I first reloaded this page, and now after replying, I am marked as the [OP].

edit: it seems the [OP] relies on a URL hash with the ID of the OP. However, this doesn't work for me because I don't navigate to HN posts from the HN site.

I usually come from https://hn.leftium.com. (Or a page like https://hw.leftium.com/#/item/47694036)

latchkey 10 minutes ago [-]
I'm so confused. Can you explain it to me a bit more clearly what you'd like to see? I literally just took the code from refined.

https://github.com/plibither8/refined-hacker-news/blob/ee7ef...

satvikpendem 2 hours ago [-]
"Tested, not vibe coded" yet you mention the AI has written all the tests. This extension may not be vibe coded but it's close to that, it seems. Regardless it seems to work well, I replaced the older Refined Hacker News extension with this, which seems like where you initially sourced the code from as the features are very similar, 1:1 even for some.

I also use this extension HNRelevant (https://addons.mozilla.org/en-US/firefox/addon/hnrelevant) which shows a list of similar posts, you might want to add that as an optional feature as well.

What's the tech stack, pure TS? You also might want to migrate from Biome to oxc, I did recently and it plays well with Vite+ (or just move to Vite+) directly.

Noticed a bug, once I edit my own comment and go back to the main post, I show up as [op] not you. Also I should be able to edit my post inline not be moved to a separate page.

latchkey 2 hours ago [-]
It is heavily coded with AI, but I'm also a 30+ year web developer. I'm not just one shotting all of the code, I'm reading it too. I'm feeling like it is giving me super powers.

See the thread below about refined, which hasn't received an update in 4 years.

I have HNRelevant on my list of features that I've been collecting.

I tried oxc and didn't like it as much as biome. They admittedly aren't as good at formatting yet. The real winner here is ultracite.

satvikpendem 2 hours ago [-]
Sounds good. Another bug or quirk, with Refined, I was able to reply and then tab once to the reply button and hit enter. Now with the "HN's approach to comments and site guidelines." text I can't do that, "comments" and "guidelines" are links so I have to tab three times to get to the reply button which is annoying. Omit that text or change the tab order (this is possible in HTML with the tabindex attribute, just make the reply button higher priority).

Also add ctrl/cmd-enter support to submit the reply.

Also this orange border when clicking a comment or link on the front page is a bit annoying, especially when it doesn't seem to actually do anything (it's not a tab select style, that shows up as the browser's normal style), and it seems to persist.

latchkey 1 hours ago [-]
The orange box is to mark where you are currently focused. If you use the keyboard navigation (keys: j/k), it really helps.
satvikpendem 47 minutes ago [-]
It's distracting for those who don't use hjkl so might be good to have it as an option.
latchkey 26 minutes ago [-]
Good feedback. I'm pushing a fix for this now. When you click the extension icon, there is now a preferences pane there and a checkbox to enable/disable the box.

https://github.com/OrangeJuiceExtension/OrangeJuice/pull/15

latchkey 1 hours ago [-]
Great suggestion! I literally took your comment, passed it into AI. At first it tried to remove the text as well as set tabIndex to -1 in code, but I think now I've got something I like.

This has been fixed and is making its way out now.

maxloh 2 hours ago [-]
I built a Stylus theme to make Hacker News' UI more modern.

Some screenshots:

https://raw.githubusercontent.com/mon-jai/modern-hacker-news...

https://raw.githubusercontent.com/mon-jai/modern-hacker-news...

https://raw.githubusercontent.com/mon-jai/modern-hacker-news...

Repo:

https://github.com/mon-jai/modern-hacker-news

latchkey 2 hours ago [-]
This is exactly what I don't want my extension to become. I don't want a new UX, I want the existing UX to be enhanced.
Isolated_Routes 2 hours ago [-]
This is helpful! Thank you
latchkey 2 hours ago [-]
:heart:
odysseus 1 hours ago [-]
How about a Safari/Mobile Safari extension so iPhone users can use it?
latchkey 1 hours ago [-]
Agreed. Unfortunately, the browser extension tool that I use, wxt [0], doesn't support Safari yet. It seems there are some work arounds, but I haven't gotten to it yet. PR's welcome, of course. =)

[0] https://wxt.dev/guide/essentials/publishing.html#safari

odysseus 35 minutes ago [-]
Is it just:

pnpm wxt build -b safari xcrun safari-web-extension-converter .output/safari-mv2

And that’s it? Or is there some hidden extra work involved.

latchkey 23 minutes ago [-]
I don't know. If it is that simple, that would be great. I'll have to dive into it. Part of it is also to ensure that it gets added into the CI/CD workflow and fully automated.

Just doing that for Chrome and Firefox took a huge amount of effort to get fully set up and approved. Thankfully, it is now at the point where every PR goes live automatically.

3 hours ago [-]
ramon156 2 hours ago [-]
> Why Install Orange Juice?

> Because Hacker News is great, but repetitive UI friction adds up. Orange Juice keeps the original feel while removing the things that cost you time every day.

That does not convince me to use your app? This is like calling someone's Kia shit and instead telling them to buy a Tesla, but just stating that it's better.

I'll stick to HN, thanks.

satvikpendem 2 hours ago [-]
To me, that doesn't sound like your analogy at all. It'd be true if the extension for example redirected an HN thread to a reddit thread of the same posted URL, ie a replacement of the original, but the extension simply adds features to the existing site. There have been extensions like this available for years, like Refined HN which this is based off, as well as many third party HN clients. Therefore I think you should try it before judging so harshly.
2 hours ago [-]
latchkey 2 hours ago [-]
Sure. What language would convince you?

UPDATE: I've changed the copy, it is pushing right now.

wesz 2 hours ago [-]
The improvements are nice, that's for sure. But i checked out github and it looks like overengineered ai slop, you could implement all the features with 1/10 of the code. But again, nobody cares nowadays which makes me sad. You even generated chrome/firefox logos using ai...
latchkey 2 hours ago [-]
How is it over-engineered slop? Happy to improve things, but I thought it was pretty clean.
wesz 1 hours ago [-]
You claim to have 30+ years of webdev experience and yet 2 MEGABYTES of javascript only for those features doesn't feel/look wrong to you?
dang 60 minutes ago [-]
Hey please don't cross into personal attack. You can make your substantive points without that.

https://news.ycombinator.com/newsguidelines.html

latchkey 1 hours ago [-]
You're not really answering the question.

That's the bundle size, not the amount of code in the project.

I've done nothing to try to optimize the bundle size, but I suspect that a lot of it has to do with some of the third party dependencies like mermaid.

wesz 49 minutes ago [-]
Well, i downloaded firefox extension and checked the size of only *.js files without any additional assests - and it's 2 megabytes. Mermaid is around 800kb, so it still leaves over 1 megabyte of javascript.

The amount of abstraction alone for the project of this scope makes me cringe. You introduce unnecessary complexity.

59nadir 3 minutes ago [-]
In all fairness, 30+ years of web development is exactly what would convince you that shipping 1+ MB of JS is fine, no? I'm not really kidding... Web development is where all of the worst practices in programming thrive and come from. Some of them are spending minutes (sometimes 10+ minutes) compiling/"building" web pages before they "deploy" them, and so on.

30+ years in web development is what you say at the support group to explain why you're there, not to convince people you've developed good taste and reasonable sensibilities.

latchkey 42 minutes ago [-]
Thanks for the feedback!
Novosell 2 hours ago [-]
Did you ai generate the Chrome and Firefox logo? That isn't what they look like, or have ever looked like, from what I know.
latchkey 2 hours ago [-]
Yes. ¯\_(ツ)_/¯
DrBenCarson 2 hours ago [-]
…why?
latchkey 2 hours ago [-]
[flagged]
semolino 2 hours ago [-]
Taking shortcuts with design tends to result in users trusting your project less.
59nadir 2 hours ago [-]
Why not just use the actual logos? It's not as if you *have* to generate them.
dartharva 2 hours ago [-]
You need AI to just replace the svg?
satvikpendem 2 hours ago [-]
These days, everyone is using AI for even small things, because honestly it's easier to say to an AI to use original SVGs and have it go out and find the correct ones with a web search tool call than to do it myself, it's simply a waste of my time for small tasks like that.
latchkey 2 hours ago [-]
Of course I don't, but if it helps me do trivial tasks so that I can focus on other things, I might as well use it.
Fraterkes 1 hours ago [-]
I think it's fine if you find the design of the site a trivial thing that others shouldn't focus on, but it kinda begs the question why you didn't just have the ai generate a much simpler page. Why have the ai generate all this fluff when you just want to show of what you've made? You (rightfully!) care about not wasting your own time, why waste ours?
satvikpendem 23 minutes ago [-]
What simpler page would it be? It just shows off the features with screenshots, not sure what else could be made simpler.
latchkey 58 minutes ago [-]
Sorry for wasting your time.
Klonoar 2 hours ago [-]
What on earth is that Firefox logo...?
latchkey 2 hours ago [-]
FIXED