Pretty cool. This is the glitchy userscript I use on Firefox mobile[1] (with screenshot) to make tap targets bigger and move navigation at the bottom of the page + collapsed.
Not bad I do like the transparency on AI usage. So many projects omit this completely and its difficult not to assume someone just claude coded it in an evening to farm clicks. But this looks nice I'll probably check it out
All day long, I read about people vibe coding, so I decided to open my mind and try it out myself and see if I could do some sort of mix between my own skills as a life long web developer and whatever the kids are doing these days. Mostly because I have a strong belief that AI itself won't take our jobs away, but people who know AI will.
What I found out is that I'm never going back to a world where I don't integrate AI into my entire coding workflow. All the way from writing documentation to committing code. It makes things way more enjoyable.
I truly enjoyed creating this whole project, it scratches my itch, and I hope that it continues to grow and be maintained over many years. I have another web project that's going on 7 years now and gets 88k downloads a month [0]. This is my passion, I'm here until I die, and even that project is now benefitting from AI.
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.
Tom (the moderator) said he was looking into getting it appended to the HN's CSS. I haven't asked them about it since ages ago, wonder if they dropped the idea.
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?
- Better formatting for text: (1) bullet points (2) markdown-like links (3) Slightly different background for code.
- More "sub-reddits". We already have Ask/Show HN. We probably can add a couple more to keep everything organized.
- Option to auto-collapse comments threads deeper than X levels by default. When they are all open by default like today, only the top comment and its children get more of the eyeballs.
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.
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.
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.
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.
"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.
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.
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.
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.
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.
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.
I would actually like a setting for less. I don’t like upvote downvote social dynamics. How about giving me a mode for a simple conversation by time, without the hierarchy.
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
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.
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?).
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.
Is there something else that replaces keybase proofs? I still see a ton of people, including yourself with keybase in their profile, but is anyone still seeing that used?
Nobody uses it because it wasn't supported. I had started off doing images, but their CSP policies prevent an extension from embedding images into the dom. SVG is still game on though. That said, I've seen a bunch of people try to create their own ascii art diagrams and wouldn't it be nice to have them just rendered as svg?
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. =)
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.
> 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.
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.
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...
Why don't you do that? Instead of doing that you unfairly critisize the guy that gave away his time and effort on something which no-one is forcing you to use. Shame.
I wrote code. But, the whole point of this project for me was to experiment with how far I could take AI as an assistant to help me with coding. So far, I've been extremely impressed.
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.
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.
Edit: Zed Shaw didn't know it at the time, but "Rails is a ghetto" wasn't describing even a local minimum in web development, it was the start of an incredible valley we've yet to see the bottom of. A sea of unskilled morons unable and unwilling to learn even the basics of just about everything came in droves and never left. Now they have bullshit generators that'll generate the shit code they probably were going to ship anyway, except faster.
Yes, it is. I'm not really active on github (other than some toys i want to share with friends), i didn't even update portfolio on my website in over 10 years.
I'm happy to share my projects and contributions privately, if you're interested.
I can assure that it's not. What makes you think I'd waste my time writing HackerNews comments using LLMs? Take a look at my post history and tell me honestly that you believe that to be the case.
No, I just used a phrasing that reminded you of LLMs and that's it. Funnily enough it also has no real bearing on my argument; your 30+ years of web development didn't stop you from shipping more than a MB of JS to add some basic features to HackerNews [because LLMs wrote everything for you].
"Every accusation is a confession" and all that...
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.
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?
as a personal project to make HN better for you, i guess it's cool. but opening every link in a new tab is definitely not for me.
[1] https://gist.github.com/mhitza/0956d7e2c11d3102cbd4cba7f6d06...
What I found out is that I'm never going back to a world where I don't integrate AI into my entire coding workflow. All the way from writing documentation to committing code. It makes things way more enjoyable.
I truly enjoyed creating this whole project, it scratches my itch, and I hope that it continues to grow and be maintained over many years. I have another web project that's going on 7 years now and gets 88k downloads a month [0]. This is my passion, I'm here until I die, and even that project is now benefitting from AI.
[0] https://github.com/lookfirst/mui-rff
Tom (the moderator) said he was looking into getting it appended to the HN's CSS. I haven't asked them about it since ages ago, wonder if they dropped the idea.
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?
https://addons.mozilla.org/en-US/firefox/addon/styl-us/
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.
Nice work, nevertheless, and useful!
Here's one potential implementation:
https://chromewebstore.google.com/detail/hn-maker-badge/khod...
- More "sub-reddits". We already have Ask/Show HN. We probably can add a couple more to keep everything organized.
- Option to auto-collapse comments threads deeper than X levels by default. When they are all open by default like today, only the top comment and its children get more of the eyeballs.
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.
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.
And yes... AI enables so many things.
https://oj-hn.com/assets/inline-reply-light.png
Out of curiosity, why did you make a new Github account for the extension instead of developing it on your own account?
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.
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.
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.
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.
https://github.com/OrangeJuiceExtension/OrangeJuice/pull/15
This has been fixed and is making its way out now.
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
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
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.
*Edit: Whoops! I was confusing refinedHN with modernHN (https://www.modernhn.com)
It's MIT-licensed open source.
I've been using a fork (also MIT): https://github.com/alexferrari88/refined-hacker-news
One thing I miss is the orange mark identifying the OP of a post.
[1]: https://github.com/alexferrari88/refined-hacker-news
https://github.com/OrangeJuiceExtension/OrangeJuice/blob/b84...
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)
https://github.com/plibither8/refined-hacker-news/blob/ee7ef...
https://github.com/OrangeJuiceExtension/OrangeJuice/pull/18
Fixed and closed (all with AI).
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
Nobody uses it because it wasn't supported. I had started off doing images, but their CSP policies prevent an extension from embedding images into the dom. SVG is still game on though. That said, I've seen a bunch of people try to create their own ascii art diagrams and wouldn't it be nice to have them just rendered as svg?
just shedding feedbin & reeder (paid)
it's 'hide read stories' for me & darkmode
[0] https://wxt.dev/guide/essentials/publishing.html#safari
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.
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.
> 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.
UPDATE: I've changed the copy, it is pushing right now.
https://news.ycombinator.com/newsguidelines.html
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.
The amount of abstraction alone for the project of this scope makes me cringe. You introduce unnecessary complexity.
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.
Edit: Zed Shaw didn't know it at the time, but "Rails is a ghetto" wasn't describing even a local minimum in web development, it was the start of an incredible valley we've yet to see the bottom of. A sea of unskilled morons unable and unwilling to learn even the basics of just about everything came in droves and never left. Now they have bullshit generators that'll generate the shit code they probably were going to ship anyway, except faster.
Webdevs nowadays blindly follow "trends" that phase out every couple of years, without really bringing anything of the value to the ecosystem.
I'm happy to share my projects and contributions privately, if you're interested.
No, I just used a phrasing that reminded you of LLMs and that's it. Funnily enough it also has no real bearing on my argument; your 30+ years of web development didn't stop you from shipping more than a MB of JS to add some basic features to HackerNews [because LLMs wrote everything for you].
"Every accusation is a confession" and all that...