refined-hacker-news
refined-hacker-news copied to clipboard
✨ Hacker News, but refined — Interface tweaks and features to make the HN experience better
Refined Hacker News
✨ Browser extension that adds useful features and tweaks a few stuff on Hacker News to make the experience better... without changing the look and feel.
The minimalist design of Hacker News is best at offering news the way we like it. Yet there are a few small interface tweaks and additional features that can drastically improve our experience while browsing through items and comments which this extension implements.
Hopefully, in due course, a few of these tweaks can be implemented by Hacker News themselves. You can help too by emailing [email protected]!
Inspired by Sindre Sorhus's extension Refined GitHub.
Contents
- Contents
- Install
- Highlights - Added features - UI tweaks - More actions - More info at a glance - Miscellaneous - Keyboard bindings - On items and comments - On input fields - Site-wide navigation - Abandoned features
- Customization and Options
- Contribute
- Donate
- Extension Permissions
- License
Install
- Chrome extension
- Firefox add-on
- Opera extension: Use this Opera extension to install the Chrome version.
Highlights
| Reply to comments without leaving page | Navigate through items and comments using your keyboard |
|---|---|
![]() |
![]() |
| Easily favorite items and comments | Hide and sort stories, and auto-refresh the page from the options bar |
|---|---|
![]() |
![]() |
| Show user or item information when hovering over the links | Highlight new, unread comments on subsequent visits |
|---|---|
![]() |
![]() |
Added features
reply-without-leaving-pageReply to a comment, edit and delete your comment just below the parent comment, without leaving the page.auto-refreshOptions bar: Auto-refresh stories on the page periodically, after a fixed interval, without reloading the page.hide-read-storiesOptions bar: Hide/show stories already opened by you.sort-storiesOptions bar: Sort stories basis of their score, age, or by their default rank.fetch-submission-title-from-urlWhen submitting an item, get the title of the page of the URL entered.list-hn-polls-separatelyShow HN Polls on a separate page (like Show HN, Ask HN, etc). Linked on topbar: https://news.ycombinator.com/#polls.prefill-submit-titlePrefill submission title field with "Show HN: " or "Ask HN: " when 'Submit' link is accessed/clicked from Show HN or Ask HN pages.past-choose-dateChoose a custom date in/frontto go back to that date.
UI tweaks
change-dead-comments-colorIf "showdead" is enabled in user settings, color of dead comments changes to light-red (#d89899) instead of the barely visible light-grey (#dddddd).comments-ui-tweaksTweaks include:- Add border to indentation to make to show indent separation between comments.
- Custom indent-width (default is 40px), which can be set using the extension popup.
- Highlight item's original poster, displayed as
[op]next to username. - Make
<pre></pre>tags more visible.
highlight-unread-commentsHighlight new and unread comments after your second and subsequent visits to the comments page of an item. Data resets after three days.backticks-to-monospaceConvert backticks-wrapped (`like this`) inline text to monospace (like this).linkify-user-aboutLinkify all links and emails IDs that are on the "about" of the user's profile.
More actions
key-bindings-on-itemsEnable key bindings on items and comments to improve navigation and item/comment-related actions. Go to mappings.key-bindings-on-input-fieldsEnable key bindings/shortcuts on input fields. Go to mappings.site-navigation-key-bindingsUniversal, site-wide key bindings/shortcuts to quickly navigate to a page (eg. Home, Show HN, Threads etc.). Go to mappings.more-accessible-favoriteAdd a 'favorite' button next to items and comments to quickly favorite them. Go tohttps://news.ycombinator.com/favorites?id=<your-username>to view favorite-d items.more-accessible-flagAdd a 'flag' button next to comments to quickly flag them.archive-submissionAdd "archive" button at the top of the comments page of a submission to view the archived version of the story's webpage or archive the webpage to the Wayback Machine.click-comment-indent-to-toggleClick indentation of the comment (on the left of it) to toggle (show/hide) that comment.click-rank-to-vote-unvoteIncrease hit-area of upvote button by clicking the rank number of the item to upvote it too.open-story-links-in-new-tabOpen items in a new tab, instead of the same tab.preview-and-set-top-bar-colorQuickly "test" topbar colors and set them on https://news.ycombinator.com/topcolors. Note: you must have 250+ karma to set a custom topcolor.toggle-all-comments-and-repliesClickable button to toggle all comments on the page, or all replies to a certain comment.
More info at a glance
load-more-links-in-navbarClick "load more" on the topbar/nav bar to show more links.profile-links-dropdownShow profile-specific pages in a dropdown when clicking your username on the top-right of the page, instead of directly opening the the profile page.show-item-info-on-hoverHover over a Hacker News item link in the comments to quickly display the item's details.show-similar-submissionsList all HN submissions that are duplicates/have been posted before with the same URL, at the bottom of the comments.show-top-leaders-karmaLoad and show karma of the top-ten leaders on HN's leaderboard (not shown by default).show-user-info-on-hoverHover over a Hacker News user link next to item or in the comments to quickly display the users's details.
Miscellaneous
input-field-tweaksTweaks include:- Show how many characters are left in the 'title' field when submitting an item.
- Increase width of 'title' field dynamically.
- Increase height of any textareas (even those that are dynamically created), dynamically.
on-link-focus-commentNavigate to that specific comment when clicking the 'on: ' link.
Keyboard bindings
On items and comments
On items/stories:
| Key-binding | Action |
|---|---|
| J | Next item (down) |
| K | Previous item (up) |
| Enter Ctrl/Cmd+Enter |
Open link and focus tab Open link in the background |
| Esc | Un-highlight item |
| U | Upvote item |
| F | Favorite item |
| C Ctrl/Cmd+C |
Open item's comments on same tab Open item's comments on new tab |
| Shift+X | Flag/unflag item |
| Shift+H | Hide item |
On comments:
| Key-binding | Action |
|---|---|
| J Shift+J |
Next comment (down) Next direct sibling comment |
| K Shift+K |
Previous comment (down) Previous direct sibling comment |
| Enter | Toggle comment |
| Esc | Un-highlight comment |
| U | Upvote/unvote comment |
| D | Downvote/undown comment |
| R | Reply to comment |
| F | Favorite comment |
| Shift+X | Flag/unflag comment |
| 0 to 9 | Open numbered/index reference link in the comment Eg: [1] https://mihir.ch ... |
On input fields
| Key-binding | Action |
|---|---|
| Ctrl/Cmd+Enter | Submit form |
| Ctrl/Cmd+I | Italicise selected portion (wrap selected text in asterisks) |
Site-wide navigation
| Key-binding | Action |
|---|---|
| Alt+H | Home |
| Alt+S | Submit |
| Alt+N | New |
| Alt+O | Show HN |
| Alt+A | Ask HN |
| Alt+P | Profile |
| Alt+T | Threads |
Abandoned features
blur-story-scorescustom-font-facehide-bad-wordsload-more-storiesscale-font-sizeshow-karma-left
Customization and Options
Extension options can be found in the extension's popup. There, you can
- specify which features you want to disable by entering features' IDs (listed above), preferably listed on new lines
- specify custom CSS, which is useful to override CSS implemented by this extension, or any other UI tweaks you prefer.
Contribute
Issues and feature requests can be created on the issues page.
For development contribution, please refer to the contribution guide.
Donate
Refined Hacker News was made by me during my study-breaks and free time. If you like and have enjoyed it, please consider donating a small amount (any amount will be really appreciated!) to support and sustain its development. Thank you!
Extension Permissions
No data is ever uploaded to a remote server, or is sent anywhere else. All data that is used by this extension is stored locally.
storage Required to save extension options in sync storage area so that your options are synced across devices. Also used to save other data such as list of read comments (highlight-unread-comments) locally.
history Required for hide-read-stories feature. The feature needs to check whether the story has been visited by you in the past, that is, whether that story is in your history.
tabs Required to open a link in a new tab, but in the background. Also required to send and receive data between the extension popup, background scripts and the active Hacker News tabs.
*://news.ycombinator.com/* Required to fetch subpages, submit forms, inline replies, etc.
*://hacker-news.firebaseio.com/v0/* Hacker News API - required to fetch item and user details.
*://url-title.now.sh/* Required by the fetch-submission-title-from-url feature to fetch the title. Source: plibither8/url-title-api.
*://wayback.now.sh/ Required by archive-submission to view archived version of webpage or save the webpage to the Wayback Machine. Source: plibither8/wayback.
*://hn.algolia.com/* Required by show-simillar-submission and list-hn-polls-separately features to get filtered search results.
License
MIT






