unclutter VS readability

Compare unclutter vs readability and see what are their differences.

readability

A standalone version of the readability lib (by mozilla)
Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
unclutter readability
39 51
1,199 8,056
2.0% 7.4%
8.1 6.3
2 months ago 1 day ago
TypeScript JavaScript
GNU Affero General Public License v3.0 GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

unclutter

Posts with mentions or reviews of unclutter. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-23.
  • Reader View / Links2 like web view filter
    1 project | /r/uBlockOrigin | 14 Jun 2023
    no a filter for uBO (I do not think it is possible) but I really like this extension: https://github.com/lindylearn/unclutter
  • Mel B calls James Corden as one of the ‘biggest d***heads in showbiz’
    1 project | /r/unitedkingdom | 3 Dec 2022
    Other browsers can use the uncluttered extension.
  • Show HN: Reader Mode, but Better
    12 projects | news.ycombinator.com | 23 Nov 2022
    There already is crowdsourcing of broken page reports: https://github.com/lindylearn/unclutter/issues?q=is%3Aissue+...

    And twitter.com is a special case: https://github.com/lindylearn/unclutter/issues/570

    I'm working on those, but it's never going to be perfect unfortunately.

  • Unclutter — a browser extension to read & save articles
    1 project | /r/chrome | 23 Nov 2022
    Here’s more info: unclutter.lindylearn.io
    5 projects | /r/SideProject | 23 Nov 2022
    I'm looking into this: https://github.com/lindylearn/unclutter/issues/661
  • Unclutter reader mode extension — Read articles with style
    1 project | /r/chrome | 23 Nov 2022
    It all started with a r/chrome post a few months ago, and since then we've added many improvements to our GitHub project.
  • Show HN: Reader Mode that shows Hacker News comments inline
    2 projects | news.ycombinator.com | 18 Jun 2022
    Hey! This is a reader mode browser extension I built that hides noisy page elements rather than extracting and re-rendering only the page text. The idea is to not make all articles look the same [0], have them still render graphs, and ideally to work in more cases.

    There are a few "tricks": patching the site CSSOM to apply simpler mobile styles even at desktop width, detecting the likely main text & removing its non-text siblings, blocklists for classnames that contain words like "sidebar", and testing this on a few hundred popular sites.

    I got carried away and also added a dark mode, page outlines, private annotations & inline Hacker News comments.

    The last feature works by parsing every top-level HN comment with a quote in it (formatted with > or "") within a few minutes, and anchoring these quotes in the related article HTML. So when you click a link on HN you’ll see the parts people are talking about while reading. [1]

    The code is all on GitHub!

    [0] Screenshots comparing it to the Firefox reader mode: https://github.com/lindylearn/unclutter/blob/main/docs/compa...

    [1] It's fun to try this on some of the "HN classics" that got 30+ quote comments over the years. The list at hn.lindylearn.io/best shows the number of “annotations” an article has beneath its title.

  • Uncluttering web articles using CSS animations
    9 projects | /r/webdev | 4 Jun 2022
    You can also contribute to the existing extension for this: https://github.com/lindylearn/unclutter
    2 projects | /r/webdev | 4 Jun 2022
    More examples: unclutter.lindylearn.io The code: github.com/lindylearn/unclutter
  • Show HN: Unclutter – New Reader Mode Extension with Inline Hacker News Comments
    2 projects | news.ycombinator.com | 4 Jun 2022
    Hey! This is a reader mode browser extension I built that hides noisy page elements rather than extracting and re-rendering only their text content. The idea is to not make all articles look the same [0], have them still render graphs, and ideally to work in more cases.

    There are a few "tricks": patching the site CSSOM to apply simpler mobile styles even at desktop width, cleaning up parents of DOM text nodes, blocklists for class names that contain words like "sidebar", plus manual CSS patches for popular sites.

    I got carried away and also added a dark mode, page outlines, privates notes & inline Hacker News comments. [1]

    The last feature works by parsing every top-level HN comment with a quote in it (formatted with > or "") within a few minutes, and anchoring these quotes in the story article HTML. So when you open a link you'll directly see the parts people are talking about here. [2]

    The extension code is all on GitHub: github.com/lindylearn/unclutter

    [0] Unclutter vs the Firefox reader mode: https://github.com/lindylearn/unclutter/blob/main/docs/compa...

    [1] The linked website show some examples for these.

    [2] It's also fun to try this on some of the "HN classics" that got 30+ quote comments over the years. The list at hn.lindylearn.io/best shows the number of "annotations" a link has beneath its title.

readability

Posts with mentions or reviews of readability. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-25.
  • Mozilla: Readability.js
    8 projects | news.ycombinator.com | 25 Feb 2024
  • CSS for readability
    3 projects | /r/webdev | 9 Dec 2023
    I'm working with the Mozilla's readability library https://github.com/mozilla/readability to get the "readable" text from articles and now I want to style the extracted text in a readable way.
  • Building a Serverless Reader View with Lambda and Chrome
    5 projects | dev.to | 25 Sep 2023
    Do you remember the Firefox Reader View? It's a feature that removes all unnecessary components like buttons, menus, images, and so on, from a website, focusing on the readable content of the page. The library powering this feature is called Readability.js, which is open source.
  • Webrecorder: Capture interactive websites and replay them at a later time
    6 projects | news.ycombinator.com | 1 Aug 2023
    I wonder if Firefox "reader mode as a utility" might be a viable alternative for Pinboard like "content oriented" archiving?

    https://github.com/mozilla/readability

  • Creating an advanced search engine with PostgreSQL
    9 projects | news.ycombinator.com | 12 Jul 2023
    Depending upon the type of content, one might want to look into using the Readability (Browder's reader view) to parse the webpage. It will give you all the useful info without the junk. Then you can put it in the DB as needed.

    https://github.com/mozilla/readability

    Btw, readability, is also available in few other languages like Kotlin:

    https://github.com/dankito/Readability4J

  • Seeking a tool or method to convert webpages into Q&A format using NLP
    1 project | /r/LanguageTechnology | 10 Jun 2023
    Use Mozilla's Readability to extract that sweet, sweet text content from webpages.
  • I built a free prompt managing tool - Knit
    2 projects | /r/ChatGPTPromptGenius | 8 Jun 2023
    Same as above but the ability to grab the entire article text (you can use the Readability library for that: https://github.com/mozilla/readability)
  • I need automatic source URLs when I paste any text onto a card or note, like on OneNote.
    4 projects | /r/ObsidianMD | 20 Apr 2023
    // Original script // https://gist.github.com/kepano/90c05f162c37cf730abb8ff027987ca3 // Bookmarklet Converter // https://caiorss.github.io/bookmarklet-maker/ // Libraries // https://github.com/mixmark-io/turndown // https://github.com/mozilla/readability javascript: Promise.all([import('https://unpkg.com/[email protected]?module'), import('https://unpkg.com/@tehshrike/[email protected]'), ]).then(async ([{ default: Turndown }, { default: Readability }]) => { /* Optional vault name */ const vault = ""; /* Optional folder name such as "Clippings/" */ const folder = "Clippings/"; /* Optional tags */ const tags = ""; function getSelectionHtml() { var html = ""; if (typeof window.getSelection != "undefined") { var sel = window.getSelection(); if (sel.rangeCount) { var container = document.createElement("div"); for (var i = 0, len = sel.rangeCount; i < len; ++i) { container.appendChild(sel.getRangeAt(i).cloneContents()); } html = container.innerHTML; } } else if (typeof document.selection != "undefined") { if (document.selection.type == "Text") { html = document.selection.createRange().htmlText; } } return html; } const selection = getSelectionHtml(); const { title, byline, content } = new Readability(document.cloneNode(true)).parse(); function getFileName(fileName) { var userAgent = window.navigator.userAgent, platform = window.navigator.platform, windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE']; if (windowsPlatforms.indexOf(platform) !== -1) { fileName = fileName.replace(':', '').replace(/[/\\?%*|"<>]/g, '-'); } else { fileName = fileName.replace(':', '').replace(/\//g, '-').replace(/\\/g, '-'); } return fileName; } const fileName = getFileName(title); if (selection) { var markdownify = selection; } else { var markdownify = content; } if (vault) { var vaultName = '&vault=' + encodeURIComponent(`${vault}`); } else { var vaultName = ''; } const markdownBody = new Turndown({ headingStyle: 'atx', hr: '---', bulletListMarker: '-', codeBlockStyle: 'fenced', emDelimiter: '*', }).turndown(markdownify); var date = new Date(); function convertDate(date) { var yyyy = date.getFullYear().toString(); var mm = (date.getMonth()+1).toString(); var dd = date.getDate().toString(); var mmChars = mm.split(''); var ddChars = dd.split(''); return yyyy + '-' + (mmChars[1]?mm:"0"+mmChars[0]) + '-' + (ddChars[1]?dd:"0"+ddChars[0]); } const today = convertDate(date); // This is the output template // It is similar to an Obsidian core template // except to insert a value we use: ${value} instead of {{value}} const fileContent =`--- type: clipping date_added: ${today} aliases: [] tags: [${tags}] --- author:: ${byline.toString().split('\n')[0].trim()} source:: [${title}](${document.URL}) ${markdownBody} `; // This copies your text to the clipboard navigator.clipboard.writeText(fileContent); // This creates a new document in Obsidian containing your clipping // I commented it out as this isn't what you asked for /* document.location.href = "obsidian://new?" + "file=" + encodeURIComponent(folder + fileName) + "&content=" + encodeURIComponent(fileContent) + vaultName; */ })
  • Any js packages to only scrape relevant content from a webpage?
    1 project | /r/webscraping | 27 Mar 2023
  • RSS meets GPT-3
    2 projects | /r/rss | 18 Feb 2023
    So first part of the task is to "extract the text from URL", and that is achieved by using descendant of https://github.com/mozilla/readability library which can extract text of any URL.

What are some alternatives?

When comparing unclutter and readability you can also consider the following projects:

murder - Large scale server deploys using BitTorrent and the BitTornado library

parser - 📜 Extract meaningful content from the chaos of a web page

arc90-readability - A copy of the original Arc90 repo with links to many of the current ports.

koreader - An ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices

dom-distiller - Distills the DOM

hn-search - Hacker News Search

bypass-paywalls-chrome - Bypass Paywalls web browser extension for Chrome and Firefox.

readability.php - PHP port of Mozilla's Readability.js

Readability4J - A Kotlin port of Mozilla‘s Readability. It extracts a website‘s relevant content and removes all clutter from it.

rssguard - Feed reader (and podcast player) which supports RSS/ATOM/JSON and many web-based feed services.

htmldate - Fast and robust date extraction from web pages, with Python or on the command-line

SponsorBlock - Skip YouTube video sponsors (browser extension)