Show HN: Unclutter – Reader mode, but better

(unclutter.it)

211 points | by phgn 9 days ago

32 comments

  • morsch 9 days ago
    Naturally this required the "Access your data for all web sites" permission -- most powerful/useful extensions need this permission. But I've been pretty conservative in adding extensions with it (as in, just two, including the obligatory UBO).

    Why isn't there a permission where the add-on doesn't get to access anything until I activate it for a specific tab, and then it only gets to access to that specific tab? Unclutter would be most useful on websites where I'm not particularly worried about misuse, but I don't want it to be able to read my emails.

    This is not meant as a dig at this add-on or its author, I have no reason to believe he's not trustworthy, I think it's a limitation of the add-on permission model.

    • phgn 9 days ago
      It's possible for extensions to only get access when you activate it for a specific tab. If you want Unclutter to work this way you can manually set "Site access" to "On click" in the Chrome extension settings (this doesn't work on Firefox unfortunately).

      The reason I enabled "all sites" by default is to make the automatic activation feature work, which used to be more powerful. Possibly it can be done with an optional permission now, I'll look into it: https://github.com/lindylearn/unclutter/issues/527

      Thanks for the feedback! Also, if you don't like something you can always submit a PR ;)

      • morsch 9 days ago
        Sorry, I should have been more specific, I'm on Firefox. Nice that it's already possible in Chrome.

        It was intended to be a comment about the limited power of the permission model in Firefox, though I have now learned from the sibling comment that Firefox actually has the permission I was thinking of.

        • phgn 9 days ago
          Yep, but extensions still have to adopt the more restrictive permissions.
    • k1m 9 days ago
      • morsch 9 days ago
        That sounds like it's exactly what I want, thanks, very interesting.
    • dredmorbius 9 days ago
      There's also a tremendous difference between:

      1. "Extension sees data on pages for which it's activated, and might modify that all kept locally", and

      2. "Extension sends all page information to The Cloud^W^W Somebody Else's Computer where it is probably being shared with umpteen third parties, advertising^W behavioural manipulation and surveillance organisations, and will be preserved in crystal until the Heat Death Of The Universe.

      Why desktop, and most especially mobile platforms / operating systems fail to either distinguish or permit control between these two scenarios is ... utterly beyond me.

      There is Steve Krenzel's recent account of being pressured, by both a Twitter marketing exec and the phone company requesting the feature, to track "when users leave their house, their commute to work, and everywhere they go throughout the day".

      This should not even be possible, let alone invisible to the device owner.

      <https://news.ycombinator.com/item?id=33511016>

      <https://threadreaderapp.com/thread/1589700721121058817.html>

      The reputational harm that this does to the company, to mobile computing, to Web 2.0, to the start-up sector, and to the infotech sector as a whole really cannot be overstated.

      Burn it down.

      • wolfgang42 9 days ago
        There’s no practical way to distinguish between these two options for web extensions: once the extension can fiddle with the HTML on the page, it can use that power to make network requests (trivially, by inserting <img> tags onto the page).
        • dredmorbius 9 days ago
          Hrm...

          That does make things more complicated.

          The dynamic nature of HTML as a whole means that 1) page contents can change interactively and 2) follow-up network requests can be made.

          Limiting that would be difficult, and might require something like, spitballing here:

          - Limiting extension functionality to subtractive network requests, or specifically permitted requests. Given that I've just installed LibRedirect, which points surveillanceware sites (Twitter, YT, Reddit, Instagram, etc.) to open, less-surveilled alternatives, I'm already contradicting myself here.

          - Limiting extension functionality to changing displayed content after an initial pre-render has been achieved. sort of:

            { Web } <-> { Unmodified fetch } <-> { Extension } <-> { Displayed content }
          
          That ... obviously ... fails to work for any number of content blocking or tracker-blocking tools (uMatrix, Ghostery, amongst others).

          This leaves us with the option of tools which are audited and certified as to behaviour, have some specifically limited sets of requests, and require those back-ends to treat any such requests in specific manners which preserve privacy and confidentiality. That's a lot more cumbersome, and doesn't work off simple allow/deny rules on-device.

          Thanks for the reality slap.

    • simcop2387 9 days ago
      I'd also love it if there was one that allowed for additional sandboxing. i.e. it can read anything but can never store or talk to the network or cause a network call to happen. I know that'd be harder to do but it'd also allow for a lot of nice add-ons to be made.
    • cxr 9 days ago
      "Access your data[...] for a specific tab" basically describes what a bookmarklet does (where by "specific tab", you mean "a given page—the one loaded in the focused tab when you activate the bookmarklet").
  • phgn 9 days ago
    Here are some past discussions about reader modes, where the motivation for this project came from:

    The most underused browser feature: reader mode - https://news.ycombinator.com/item?id=28286493 - Aug 2021 (357 comments)

    How does Firefox's Reader View work? (2020) - https://news.ycombinator.com/item?id=30864311 - Mar 2022 (102 comments)

  • untangle 8 days ago
    I use this category of tool all the time, and I've tried at least a dozen of them.

    Based on about an hour of usage, Unclutter is my favorite -- nudging out my current tool-of-choice (Tranquility!). Great job.

    I would obviously like for you to continue development. Having said that, I have no great monetization advice. Nor do I even have any burning desire for new features. While I would expect to make progress on the latter, the money thing will be tough.

    Some thoughts on money: Since I'm a power user of this type of software, I might pay $10/yr or so for Unclutter. But I have been told that such a low price do not a business model make. I think that your tool is squeezed between the "it's a vitamin" and "lots of good free options exist" pincers. As a sidenote, social features don't appeal to me.

    Whatever you decide, I wish you luck. I'm on Firefox/Mac BTW.

    • phgn 8 days ago
      Thank you! I agree, Unclutter might be a useful product but not a good business. At least there are other benefits to working on an open-source project like this.

      Have you tried the "library" aspect of the extension? Click on the "Saved in library" button in the top left and you'll see all your recent articles. What do you think of that?

  • Whiteshadow12 9 days ago
    Tested this on pg essays, the social comments is a pretty cool feature, I initially thought you would also surface the footnotes, similar to gwern site (one site I doubt I'd ever use a reader mode on).

    Lovely tool, in terms of things I would pay for, the actual reader mode is not really the thing I would pay for. What I would pay for would be, highest to lowest:

    1. An awesome search engine that can search text I read, think being able to search text on the sites in your browser history, there was a service that did this called Memex, and Rewind seems like it's trying to do something similar.

    2. Linked texts, e.g PG might say X then Naval says something in the same area.

    3. Reminders about articles I read x period of time and might want to re read.

    I'll think of other features I would be willing to pay for.

    • phgn 9 days ago
      Thank you for the feedback, really interesting ideas.

      > being able to search text on the sites in your browser history

      I'm curious, have you used this in Memex when it was still supported?

      > Linked texts, e.g PG might say X then Naval says something in the same area.

      Do you mean direct hyperlinks and backlinks between articles? So if the Naval post references a PG essay, you'd see that while reading the PG essay?

      > Reminders about articles I [...] might want to re read

      How should it decide which article you want to re-read?

      • Whiteshadow12 8 days ago
        Ignore the Linked text idea, in theory it is solved by the Memex like feature. It might lead to an over engineered trap.

        Regarding the Memex like feature I did use it a lot, it worked like full text search for the HTML, they had a sync service that worked by importing your search history, I'm guessing they downloaded the HTML and stored it, so they could search against it. My usage of the service is a couple of years old so things might have changed, at the time it would crash when I did imports.

        You already have search on highlights and full text on them, so maybe the Memex like feature isn't needed.

        > How should it decide which article you want to re-read?

        It could decide based on other users who also saved the article, this might require storing the data on your servers, maybe number of highlights made or just ask the users when they add it to their queue.

        Nice extension, the more I use it the more I like it. I've even disabled Firefox reader mode in favor of this.

        Hope you find a way to monetize, play around with other monetization strategies other than good-better-best or one size fits all price point. Maybe usage based on the queue? There might be heavy crowds of users who would have a higher willingness to pay for example the "Second Brain" crowd.

        Links

        Memex Site: https://memex.garden/

        Recent Pricing Guide I've been working through:

        https://news.ycombinator.com/item?id=33502567

        Priceintelligently posts on hn: https://news.ycombinator.com/from?site=priceintelligently.co...

        Some Lago Blog posts on pricing: https://www.getlago.com/category/product-billing

        • phgn 8 days ago
          Yeah, I'm wondering why Memex disabled the search feature. It obviously didn't work out for them.

          > It could decide based on other users who also saved the article

          That's a cool idea, I'll think about it. Maybe it doesn't even need to be other Unclutter users. I already ingest almost every Hacker News post for the social annotations feature and there are APIs for web traffic stats.

          Thank you for the links on pricing, that's very helpful. At least this Show HN has convinced me to keep trying for a bit longer :)

          If you have any other feedback later, just email me, open an issue, etc. Thanks!

    • shermix011 8 days ago
      1. There's one called Operand.ai which does exactly that.
      • Whiteshadow12 8 days ago
        I love the internet this is perfect thank you. Only issue is no Firefox for now.
      • phgn 8 days ago
        Interesting. Do you use Operand regularly?
    • kidlj 9 days ago
      undefined
  • westcort 9 days ago
    This bookmarklet does something similar and is browser-independent:

    javascript:void%20function()%7Bjavascript:(function()%7Bvar%20a=Math.floor,b=document.querySelectorAll(%22p,%20title%22),c=%5B%5D,e=%22%22,f=%22%22,g=%22%22,h=0,k=0,l=%22%22,m=%22%22,n=window.open(%22%22,%22_blank%22);for(var%20d%20in%20b)%7Bvar%20i=b%5Bd%5D.textContent;i%26%26(c=c+%22%5Cn%22+i)%7Dfor(f=c,e=f.replace(/%5Cn/g,%22%20%3Cbr%3E%3C/br%3E%20%22),g=e.split(%22%20%22),h=0;h%3Cg.length;h++)k=a(g%5Bh%5D.length/3)+1,l=%22%3Cspan%20style='font-weight:bolder'%3E%22+g%5Bh%5D.substring(0,k)+%22%3C/span%3E%3Cspan%20style='font-weight:lighter'%3E%22+g%5Bh%5D.substring(k,g%5Bh%5D.length)+%22%3C/span%3E%20%22,%22.%22==g%5Bh%5D.substring(g%5Bh%5D.length-1,g%5Bh%5D.length)%26%26(l+=%22%3Cspan%20style='color:red'%3E%20*%20%3C/span%3E%22),m+=l;n.document.write(%22%3Chtml%3E%3Cp%20style='font-size:40;line-height:200%25;font-family:Arial'%3E%22+m+%22%3C/p%3E%3C/html%3E%22)%7D)()%7D();

    https://www.locserendipity.com/Hyper.html

    • phgn 9 days ago
      Yep, there are lots of ways to do something similar. Reader modes are also built into Safari & Firefox directly.
  • mlinksva 8 days ago
    I like it. Ought to be a built-in browser feature, in addition to generic reader mode. But then so should uBO-level ad blocking...so you may have many years.

    Have you considered donations/sponsors/patrons? Presumably more an occasional coffee requires massive numbers of users for something like this, but maybe you could do something like prioritize attention to site-specific fixes (which seem to be the main thing in https://github.com/lindylearn/unclutter/issues) for supporters.

    Added: the annotation/library/social features look interesting and thoughtfully done, but <10% chance I'll use regularly. Perhaps I should want a tool such as this to help me be more organized, but instead I perceive it a bit as...clutter.

    • phgn 8 days ago
      Seeing many parts of the UI as unnecessary seems to be a common reaction, particularly for people who find it by searching "reader mode" in the Chrome store.

      What do you think about presenting the library aspect as a "Pocket alternative"?

      • mlinksva 8 days ago
        I've never used Pocket, and upon seeing it in the Firefox UI, immediately searched for how to hide it. I'm the wrong person to ask. :)

        But if I were to embrace such features, I'd have a naive question: why do I need to unclutter an article to access them? If I'm perfectly happy reading a normally rendered page and see a phrase I want to annotate, I won't want to break my flow by uncluttering first. This emphasizes to me that these features feel like they belong in two separate extensions.

        • phgn 7 days ago
          Good point. I actually wanted to address this "breaking the flow" with the "keeping the style of the original site" approach for Unclutter, vs. reader modes that have a totally different reading UI.

          But maybe that's not working out completely. Thanks for the feedback!

          • mlinksva 7 days ago
            Yeah, I think the re-render(?) breaks flow as completely as traditional reader mode, it doesn't matter that the uncluttered version retains some of the look of the original. If the text doesn't stay in the same place, flow is broken. In addition it seems there's some animation affect in the original->uncluttered transition that makes it slightly more jarring, but is not fundamental.

            Thanks for unclutter, careful listening to feedback in this Show HN post, and pointing out your inspirations at https://news.ycombinator.com/item?id=33718859! Though I've never connected with its functionality beyond reader mode (in any tool), I'd love to at some point, but it's hard to get right in a way that doesn't become burdensome or transitory. I want browsers to become much more powerful user agents. Stuff like hypothes.is that I see you've integrated with is super cool, just not there for me yet. Godspeed!

      • pihentagy 8 days ago
        That would require to sync your library on your Firefox account, right?
        • phgn 7 days ago
          Yep, Pocket has an API for this.
  • thunderbong 8 days ago
    This is really well done. The 'reader mode' is very clean. I really like the 'Table of Contents' that show up on the left as well as whether the article has been scrolled to the end (reading completed).

    Certain features like widening and reducing the width of the 'reader mode', as well as changing font size, I've not seen earlier. The highlighting feature is also great.

    The 'Library', which shows list of pages I've uncluttered and highlights is awesome!

    On top of that, the fact that it is open source, is fantastic.

    Kudos for all the work and providing to everyone for free.

    You've already provided an 'Export Data' option as well!

    In terms of monetization, I can think of -

    1. import from that exported CSV

    2. seamless sync when I'm using different browsers or systems. Essentially, a paid account via which the sync happens seamlessly.

    All in all a fantastic piece of open source software. Thank you!

    • phgn 8 days ago
      Thank you for the feedback, I'm glad it resonates!

      I'm already working on both of your suggestions, hopefully this will be possible within the next 2 weeks :)

  • iudqnolq 9 days ago
    I know mobile Firefox extensions are a big pain for a small userbase but that'd be my #1 feature request.
  • dredmorbius 9 days ago
    For what it's worth, I do this manually through a combination of uMatrix element removal and custom CSS stylesheets (applied via the Stylish CSS manager browser extension). I've experimented with both general and more specific clean-up rulesets.

    I'll be the first to admit that this requires some knowledge of CSS. Or, in my case, turned out to be how I learned most of what I know about it ;-)

    There are a few general observations I've made over the years:

    1. A whole lot of Web design is absolute crap. Or as I put it, "Web design isn't the solution, Web design is the problem."

    2. Less is virtually always more. I'm constantly shocked at how much calmer the experience of reading a site to which sidebars, recommendations, social-media link-litter, advertising, and of course, autoplay video and audio, have been removed.

    3. There's a massive amount of shitty HTML out there.

    4. Content extraction ... can work, and surprisingly well for some sites. I'd built an html-xml parser for the Washington Post which reduces news articles to about 1% of their original size, and tremendously improves readability. Those tend to have to be configured for specific sites or content engines, however.

    5. That said, there's a lot of re-use of content engines, and some rules can prove quite generalisable. But ...

    6. ... There's also a lot of churn, and rules which work at one point in time can fail spectacularly at another. Determining what version of the generator is being used for a specific request is ... difficult.

    7. Often the most dramatic improvement is simply to dump plain text of the main meat of an article and re-apply formatting to that. This is of course manual, but adaptive and ... reasonably quick. What also becomes rapidly apparent is that site styling and markup offer very little additional benefit or structure to the core content.

    8. For almost all commercial sites, there's virtually no use of bold/strong, and little of emphasis, outside of advertising or ancillary content. Simply nuking <b> and <strong> tagged-content is remarkably effective at trimming crud. Often it's the only reliable way to do so.

    • phgn 8 days ago
      Yeah, parsing & cleaning up HTML will always be a heuristic that fails sometimes.

      I'd highlight your point nr. 5. A very large percentage of articles use Wordpress or other website builders. Once you support a few large sites your coverage drastically increases.

      With Unclutter I also found it helpful to have an automated fallback -- if the text content of the page reduces too much, it disables some of the content block methods one by one.

  • dewey 9 days ago
    This looks very neat, I know it's an edge case (And it's not great to build Safari extensions, been there) but do you have any plans for Safari support?
    • phgn 9 days ago
      Not an edge case, I've been tracking this for a while: https://github.com/lindylearn/unclutter/issues/13

      Someone else in this thread suggested a version for mobile Safari which made supporting this even more interesting. No promises, but hopefully I can get to this before the end of the year.

      • thewebcount 9 days ago
        It would also be nice to know if this works in Orion. Orion is a WebKit-based browser on macOS and iOS that allows plug-ins like uBlock Origin. (You can download it here: https://browser.kagi.com/)
        • phgn 8 days ago
          I believe they want to support Chrome extensions natively, but maybe that's not ready yet. Unclutter is not installable from the extension store right now.

          I'm not sure what we can do, but let's track Orion support for Unclutter here: https://github.com/lindylearn/unclutter/issues/569

      • dewey 8 days ago
        Great to hear, looking forward to it!
  • CrypticShift 8 days ago
    This is not a reader mode. You are literally building a beautifull ‘Read it later" app [1] around a reader mode, or is it a "News Reader" app? You choose.

    If you position it this way, I think there is demand for an open source based, local-first option. You will have to differentiate yourself from others like memex.garden.

    I can tell you: It is a hot thing right now. People in the tft/note-taking community just can't stop talking about Readwise [2] in twitter. And it is charging 5-10$ PER MONTH !. To be Fair, their app does a lot of things and does it right.

    The prices will surely go down with competition, but I don’t think it is a Fad. As a business model, you can take some inspiration from the popular freemium open-source note-taking apps.

    [1] https://alternativeto.net/category/books--news/read-later/

    [2] https://readwise.io/

  • satvikpendem 9 days ago
    Works great. Only thing I'd include is customizable text and background colors. I use an OLED monitor and I'd like to make the background pure black rather than simply grey like currently. I made a GitHub issue: https://github.com/lindylearn/unclutter/issues/537
    • phgn 9 days ago
      Makes sense! Let me know if you want to try implementing this :)

      How would you expose the setting in the extension UI?

      • satvikpendem 9 days ago
        https://i.imgur.com/EzVONAD.png is how it's done in my current extension, perhaps you can make one of the bottom squares say "Custom color" and when clicked on, it would expose a color picker. Then save the choice in local storage or however you store data now. Dark Reader is also another great extension to look at to see how they did it.
  • langsoul-com 8 days ago
    > Monetisation has proven to be hard and for freemium there would need to be much higher numbers anyways. Do you think I should keep working on the project?

    The chances of you making first world country wages with such a project is minimal. So if that was your goal, I'd adverse seeking something else. Now, whether you want to continue working is up to you.

    • phgn 8 days ago
      Yeah, monetisation evidently not the goal of the project. I mostly want more motivation to work on it :)
  • pugets 8 days ago
    This is the most useful thing I've seen on HN since... well, I don't know when. Thanks a lot OP. Keep working on it.
    • phgn 8 days ago
      Thank you for saying that! :)
  • _nalply 8 days ago
    Playing the devil's advocate: Why is Firefox Reader mode not good enough?

    And also please note that Mozilla has their algorithm in the open here: https://github.com/mozilla/readability

    • phgn 8 days ago
      It is good enough for many people and readability.js is re-used in many other projects. I'm really grateful for it.

      Unclutter just produces more visually pleasing results by keeping the original style of the website intact.

      Here's a side-by-side comparison: https://github.com/lindylearn/unclutter/blob/main/docs/compa...

    • atchoo 8 days ago
      I just wish we could remove the toolbar that I don't need yet is permanently stuck at the top.
      • phgn 8 days ago
        It may be possible to hide that with custom user styles: https://support.mozilla.org/en-US/questions/1069513

        Looking at that link, wow -- I didn't realise the Firefox reader existed for over 7 years now.

        • atchoo 7 days ago
          I have tried that in the past but it didn't work. Undocumented workarounds like this don't age well over seven years!
  • catchmeifyoucan 9 days ago
    Digging this UI. It's actually really beautiful compared to regular ol' reader mode. The UI is nice, and it's a cool touch to see social comments. Nice work!

    I love that you also opened source it! Which is a huge win.

    It might also be nice to "auto-activate", so people don't forget it's running. Right now, I have to click the extension to run it.

    If it could pass paywalls, I'd probably pay ("donate" might be a better term).

    Any chance you could bring it to iOS as an extension? A lot of my reading is also happening on phone

    • phgn 9 days ago
      Hey thank you! I'm really glad you like the extension.

      There actually is an "auto-activate" feature you can enable in the settings. Is this what you had in mind?

      Regarding mobile support, I know. I'm not sure how to handle mobile Chrome which doesn't allow extensions, but for Safari this should be possible. No guarantees when I can get to this though. See https://github.com/lindylearn/unclutter/issues/529

      • catchmeifyoucan 5 days ago
        Kind of - I don't even want to activate once. Can you run it in the background? And just run it by default (at least on websites you're confident about). I might forget it exists
  • gnicholas 8 days ago
    > Monetisation has proven to be hard

    What paths have you taken/considered? Given that this is open source, how would you get users to pay?

    • phgn 8 days ago
      Additional premium features around the "article library" aspect of the extension. So for example an account to access it from mobile devices, AI topic classification, additional customisation etc.

      I think it's hard to make money from reader modes alone, with so many free alternatives. But you know more about that topic than I do. Any suggestions?

  • hnthrow10282910 9 days ago
    Might just be me, but the example photos (not the first two) don’t load on the landing page
    • unsafecast 9 days ago
      I have no idea if it's related, but on chrome on my phone most of the page was solid yellow. Took a while to realize I'm supposed to scroll and the things show up.

      I don't like this 'trend' of the things appearing with an animation as you scroll, I find it irritating and sometimes confusing.

      Anyway, the problem here seems to be that the threshold is way too high, it only triggers when you scrolled the whole content away.

      • phgn 9 days ago
        I just lowered the scroll threshold on mobile, does that help?

        The problem is that the example videos auto-play and can be quite distracting if they're visible by default.

        • unsafecast 8 days ago
          I _think_ it's better. For me, it's still a bit weird when you're scrolling past the first one, but I think you just need a hint or something that the region is scrollable (my confusion comes from the fact that there needs to be a card-length empty space for the card to come in).
    • phgn 9 days ago
      Do you mean the example videos with the text next to them? Or the 2 rows of images at the very bottom of the page?

      They are .webm and .webp. Which browser & browser version are you using?

      • leipert 9 days ago
        Not the parent, but Safari on iOS. https://caniuse.com/webm
        • phgn 9 days ago
          I just added .mp4 fallbacks, thanks for the tip!
      • me_bx 9 days ago
        For me the videos look like images, both on Firefox and chromium on linux.

        No play button is displayed, no video playback control bar either, and pressing on space bar does not start the video. Right-clicking over the video shows a context menu with "play" option.

        It is confusing to see these as screenshots of the cluttered interface and no indication that these are videos.

        • phgn 9 days ago
          Do the videos auto-play for you when they appear?

          I made the bad decision of hand-coding the landing page in React, this is the result of it :)

          • riezebos 8 days ago
            I think they have autoplay disabled, I have autoplay disabled as well and have the same experience. If I enable autoplay it works. (Firefox)
  • clnq 9 days ago
    I would pay to have something like this that could also summarise articles with GPT-3.
    • phgn 9 days ago
      Have you used other services that summarise articles?

      What would be the workflow? Do you want to read the summary instead of the article, use it to decide whether to read, or something else?

      • clnq 8 days ago
        I've been using Explainpaper (https://www.explainpaper.com/) to get an introductory understanding of textbook chapters and technical articles. I want to do the same for news articles and specialised blogs.

        Yes, I would like to see a one-paragraph summary of technical articles to decide if they are worthwhile to read. For news articles, the summary might be all I want to read.

        I have very little time to read things online. I try to skim the introductory and closing paragraphs in articles I read, but some authors bury the "meat" of the matter among walls of text. And for someone like me, that knowledge is practically inaccessible. I also don't think I have the attention span for some very long technical texts. A plain English summary would enable me to read them.

        To recap - I would like to see a GPT-3-like summary of the entire article. It would primarily help me by saving time reading technical texts - either by helping me digest them or by helping me understand whether the text is worth reading in the first place.

        If article summaries were cached for each article, that would be fine for my use and probably more economical on your end. I do not want to get bespoke summaries for parts of the article or summaries answering questions.

        • phgn 8 days ago
          Makes sense!

          I've actually had a similar feature request before: https://github.com/lindylearn/unclutter/issues/297

          Have you tried some of the existing solutions mentioned in the ticket? I'm curious if they solve the problem for you, and if not, what Unclutter could do better.

          • clnq 7 days ago
            I took time to try all four examples in the feature request.

            BlinkNotes didn't work for a technical reason, TLDR; it did not have AI capabilities - only crowdsourced summaries.

            TLDR This was good but seemed to use an NLP algorithm they call "AI." So instead of summarizing articles, it seems to produce a bullet list of the essential text fragments. This is in contrast to the much easier-to-read conversational style summaries GPT-3 can provide. TLDR This also did poorly with some of the technical articles I have authored, sometimes extracting pieces of C++ code as meaningful text.

            Summari worked very well for me. It summarized even quite technical articles well because it uses a conversational AI. Thanks for the recommendation.

            If I had to name one key criterion that differentiates good summaries from bad, in my opinion, it would be the effective use of language. Conversational/language models like GPT-3 are proficient at absorbing much contextual information and synthesizing a short and effective summary. NLP algorithms are good at throwing away superfluous context, which is common in casual writing, but they do not seem to work well for technical writing or texts whose purpose is to explain concepts and where there is little superfluous context to throw away.

            Perhaps for something like Unclutter, if the users mainly read news sites, then an NLP approach could be appropriate (it would be cheaper and works well for such content). But the ideal implementation for an article summarizer for me needs that summary-from-a-lot-of-context synthesizing capability.

            • phgn 4 days ago
              Thank you for doing the research!

              The big problem with current transformer-based models is the input limit. We'd probably need to split large articles and then summarize the summarizations of these chunks. And yeah I agree, Unclutter should work on any kind of article, not just on factual news.

              Please let me know if you're still using Summari in a bit! They seem to focus on their hosted version, I'm curious why.

  • RamblingCTO 8 days ago
    Unclutter is already used as a name in the macOS space.
    • phgn 8 days ago
      Yeah. It's actually surprising there aren't more products with this name.
  • freediver 9 days ago
    Fantastic work! Can you make it work with Twitter threads?
  • tuananh 8 days ago
    i always want to do this but instead get a sharable url. i wrote a quick, dirty version of it https://reader-next.pages.dev/?url=https://netflixtechblog.m...
    • phgn 8 days ago
      Nice! Interestingly I had the opposite goal -- uncluttered articles should still have the same URLs.

      It makes total sense for sharing!

  • drexlspivey 9 days ago
    Neat! It would be useful if the core logic was a library so you could fetch a webpage unclutter it and and save to a file or send as email.
  • enriquto 9 days ago
    > The extension has about 400 active weekly users right now,

    How do you know that? It sounds a bit scary that you are able to know this number.

    • lioeters 9 days ago
      I was also skeptical at first, but the code is open source, and there's clear documentation on privacy policy and metrics collected.

      https://github.com/lindylearn/unclutter/blob/main/docs/metri...

      Bravo to the author, well done for earning the users' trust.

      • phgn 9 days ago
        Yep there is usage reporting (which features people use), but it never includes the sites or domains you visit. Beyond the project being open-source, it's also bundled so the production code is a readable as possible for you to verify this.

        Honestly the extension would not exist in its current form without this. Looking at the usage after releasing a feature is incredibly helpful to see if something is working.

    • sabellito 9 days ago
      I have an addon published for Firefox and they provide usage stats, which includes Daily Active Users, despite the addon itself having no tracking at all.
      • phgn 9 days ago
        I believe that is the number of installs in active browsers, not how often people interact with the extension (which is much lower).
    • gnicholas 8 days ago
      This is publicly available for any Chrome extension in the Chrome webstore.
  • indit 8 days ago
    This is great. Could you add context menu to go reader mode directly from a link? This will be great for accompanying HN.
    • phgn 8 days ago
      There is a context menu entry ("Open link with Unclutter")! It might just be buried in the list if you have a lot of extensions?
  • kazinator 9 days ago
    It looks nice! Does it have some paywall-busting powers, like Firefox's built-in reader mode?

    Quite often, you can get through many a paywall by switching to reader mode and then reloading the page. Previously hidden content appears.

    • phgn 9 days ago
      Thank you!

      Admittedly, paywall-busting doesn't work as well with Unclutter as with the text-extraction methods. But it's still effective for most sites and there are custom tweaks e.g. for nytimes.com.

      I'm thinking about improving on this actually. It would be cool to fetch the page content from web archives automatically if it detects a paywall. Kind of like the "archive.is" links people post here all the time, but with less clutter.

      • satvikpendem 9 days ago
        I use the Bypass Paywalls extension [0] for this, and it works great with Unclutter.

        [0] https://gitlab.com/magnolia1234/bypass-paywalls-chrome-clean

        • phgn 8 days ago
          Is this the same extension as https://github.com/iamadamdev/bypass-paywalls-chrome?

          I've been using the latter for years now too. It still doesn't work with hard paywalls like the ones on economist.com or wsj.com.

          • satvikpendem 8 days ago
            No it's a fork that strips out tracking info like Google Analytics and adds new features on top of it. Works for all the sites I've tried it on.
      • kazinator 9 days ago
        Is that paywall busting even an actual goal/requirement in reader mode, or just a fortuitous side effect of the way it does its "web clipping" (is that still a term?)
        • phgn 9 days ago
          It's an intended side effect. The paywall banners are also just clutter to remove from the DOM, often the entire text is still there.

          Technically, messing with paywalls is forbidden for Chrome extensions listed in the webstore (and detrimental for getting press coverage). Which is why no one advertises this.

  • f0e4c2f7 8 days ago
    This seems great! Any chance we could get a version for Firefox for Android?
  • perpil 8 days ago
    Nit on landing page, seperate should be separate.
    • phgn 8 days ago
      Fixed now, thanks!

      There really should be a Grammarly extension for code editors (I know there actually is, but I don't want it to see all the stuff I write).

      • langsoul-com 8 days ago
        Pretty sure vscode has a spell check extension. More or less good enough unless you're doing legit writing.

        Although, dunno how it'd work for dynamic data.

  • agumonkey 9 days ago
    add nlp based automatic tagging and i'm set :)
    • phgn 9 days ago
      Tagging for what specifically? What would you use the tags for?

      I actually experimented with article topic-prediction for a few months, but assignment errors were annoying and it was not clear if it's useful at all.

      • agumonkey 9 days ago
        main topic of the page, so you can switfly bookmark it with 1-3 tags preset for you. maybe i'm just a unorganized hoarder that can't use bookmark to save his life but i wanted to make that for years and never got started :)
        • phgn 9 days ago
          Do you use bookmarks right now, and have you tried manual tagging?

          I believe Pocket premium has AI-suggested article tags. Maybe something similar makes sense for Unclutter, but I'm not sure of the demand for it.

          • agumonkey 9 days ago
            I sometime bookmark, but mostly tags.. or just hoarding lumps of links. Hmm thanks for the info, I didn't know pocket did that. Now I just need this as a standalone firefox extension :)

            ps: in any case, my suggestion was a soft tongue in cheek, not pressing you, unless it excites you. And kudos on your results already.

            • phgn 8 days ago
              Another question: do you look at your saved links frequently, for example to browse by the tag you assigned? What's the primary purpose of tagging?

              I just created a ticket for this: https://github.com/lindylearn/unclutter/issues/595

              • agumonkey 8 days ago
                I don't much because I lack proper auto-tagging, circular problem. tagging is half ergonomics (tagging is auto suggested in firefox ui, unlike folders which require selecting) half categorical, a bookmark can belong to many sets of tags instead of being in one folder (or duplicated)
  • uuencode8 8 days ago
    I am ashamed to advertise it so bluntly but I wrote a similar tool that might address some of the above requests. The browser extension works with all desktop browsers, Firefox Beta/Nightly on Android (that's how I use it) and with Kiwi Browser on Android. The IOS shortcut has only been tested via appetize.io. There's a sort of sync - RSS and a dedicated web page. Bypasses some paywalls and most ublock/adbock blockers.

    https://web2doc.net

    • phgn 8 days ago
      Oh nice! Seems like "send articles to Kindle" is its main selling point?
      • uuencode8 8 days ago
        Not only Kindle. There are e-readers with Dropbox integration and RSS is still widely used. My own scenario (no matter phone or computer):

        - I come to a page I want to read later, a page behind a soft paywall, a page with a "switch off your add blocker" popup, page with tons of JS, popups, videos that takes forever to load and one has to close this and that while scrolling down

        - It takes one click (2 to 4 taps on mobile) to send the page to web2doc and forget

        I read the content directly in the web channel or (1)Feeder reminds me about the new article(s) within half an hour.

        (1) Feeder: https://f-droid.org/en/packages/com.nononsenseapps.feeder/

  • piyush_soni 8 days ago
    Just tried a bit, looks nice!
    • phgn 8 days ago
      Thanks for trying it! Is there anything that could work better?
      • piyush_soni 5 days ago
        Just a few. Enabling it on a few sites doesn't work as expected at all, and the add-on should probably be disabled on those - for example Twitter. First, it tries to enable the dark mode on Twitter, but the tweets itself are all gone (the only thing you see is the heading sections). And when you disable the extension to return to the normal mode, the dark mode remains on tweets (central section) for example, while the rest of it turns white again. That's a bug. I think you might need to crowdsource which websites it doesn't work fine with.