The Minimalistic Dillo Web Browser Is Back

Over the decades web browsers have changed from the fairly lightweight and nimble HTML document viewers of the 1990s to today’s top-heavy browsers that struggle to run on a system with less than a quad-core, multi-GHz CPU and gigabytes of RAM. All but a few, that is.

Dillo is one of a small number of browsers that requires only a minimum of system resources and will happily run on an Intel 486 or thereabouts. Sadly, the project more or less ended back in 2016 when the rendering engine’s developer passed away, but with the recent 3.10 release the project seems to be back on track, courtesy of efforts by [Rodrigo Arias Mallo].

Although a number of forks were started after the Dillo project ground to a halt, of these only Dillo+ appears to be active at this point in time, making this project revival a welcome boost, as is its porting to Atari systems. As for Dillo’s feature set, it boasts support for a range of protocols, including Gopher, HTTP(S), Gemini, and FTP via extensions. It supports HTML 4.01 and some HTML 5, along with CSS 2.1 and some CSS 3 features, and of course no JavaScript.

On today’s JS-crazed web this means access can be somewhat limited, but maybe it will promote websites to have a no-JS fallback for the Dillo users. The source code and releases can be obtained from the GitHub project page, with contributions to the project gracefully accepted.

Thanks to [Prof. Dr. Feinfinger] for the tip.

21 thoughts on “The Minimalistic Dillo Web Browser Is Back

    1. Mozilla here uses 2.7 GB in 21 tabs. That is 128 MB per tab. Or 8426 original IBM PCs (that would fill one Olympic swimming pool to the height of 20 cm).

      I’m curious what M. does do with all the memory… I mean, mostly text only tabs, only one playing some tube-video.

    2. Vivaldi here uses 3.06GB in 49 tabs, so around 62MB per tab, and 1.3% CPU on my Xeon E5-2667. It’s made by people that left Opera when it became too bloated. Runs on Chromium, so it’s Chrome with the soul of Opera.

      I use it since the first public pre-alpha release a few years ago, and it’s pretty good. It’s easier on resources than Firefox or Chrome, and does not have any issues with any website. And you can use Chrome extensions without any problem.

        1. Not hibernated, I am too lazy to tell them to hibernate. They are usually left open because I am researching the solution to multiple problems, and let them open because I may face the same problem down the road.

  1. Just opened hackaday through an older Dillo 3.0.something. I can read articles and comments, but no pictures on the front page, no main menu and can’t enter comments. So what is the status of: “but maybe it will promote websites to have a no-JS fallback for the Dillo users.”.

    I don’t like the direction the “modern web” is going, but I also don’t have the illusion this will change.

    It is a nice idea to have a backup browser though. Mainly to be prepared for when for example an update of your normal browser goes haywire, (or damaged by malware etc) and you can’t use it for some reason. I mean, how do you fix PC problems if you don’t have a working browser?

    I had Opera installed for some time, but it had a very annoying habit of complaining big time because I don’t use the “keyring manager” (or whatever) and Opera tries really hard to communicate with that by default (I think I had to cancel it 3x each day I started Opera after a reboot).

  2. Dillo is very good. But it is still not in library form. Adding dillo to wxwidgets, to C gtk or QT would change usage a lot.

    Many projects don’t want to link to JavaScript for security reasons. Such a library would give a powerful boost to the use of this browser.

  3. Does it support HTTPS and TLS/SSL by any chance?
    I’m asking because majority of servers require that by now, despite them hosting lightweight HTML sites sometimes.
    It would be cool if Dillo would support this, because Dillo is one of the few world wide web browsers available to us DOS users. :)

  4. > but maybe it will promote websites to have a no-JS fallback for the Dillo users.

    As beautiful as this sounds, it would be naive to think this is going to happen.

    Major websites seem to don’t even test their sh*t if it works with uBlock enable and the sorts. As if They’d care about this Niche browser.

    It’s nice to see some development, but its far from enough to make a change to the web we have today.

    1. Dillo’s main strength are the plugins. I think of it like a GUI-ish Elinks for accessing many protocols and in contrast to Elinks I know how to write plugins for Dillo.

      I do not expect Dillo to change the bloated WWW. But we sure cannot expect the ultrafat $$$Browsers to add back FTP, Gopher and other protocols. So there is a reason (for me) to use Dillo despite not being able to drop the ultrafat $$$Browsers.

  5. i used to use a variety of cheap browsers on palmtops back in the day…nokia n800, ipaq h3650 era. dillo was one of my favorites but there are a couple others that were basically indistinguishable in featureset and performance. i wound up taking my nokia n800 to a law class, where i had scraped a legal reference into a directory full of hundreds of text files. i don’t remember if i had processed the text files into html/1.0 or not. anyways, the punchline is, the performance was intolerable. *with every browser i could find including dillo*. i was just astonished by that. in hindsight, i wonder if they were all falling back to some braindead nokia-provided hack to generate an implicit index.html, and if i had simply made a static index.html if it would have become magically tolerable. but i think i tried that??

    i think the moral of that story is that even old software has surprising performance failures. that apart from ‘bloat’, there is also ‘the pointlessly O(n^2) visit’ all over the place. aside: vim repeat is O(n^2). like, what?

    but the upshot is, it’s 2024 and i get good browser performance by running chrome in a lxc container on a PC in my basement and interacting with it over VNC. that PC has so much RAM, man. RAM to spare! even when i’m remote, that turns out to have tolerable performance even usually for video/animation. and my laptop doesn’t get hot or unresponsive and it has phenomenal battery life. sometimes, i confess, that PC gets unresponsive but at least i’m not relying on it just to animate my cursor and answer keypress events when it does.

    kind of sad that the browser used to be a candidate for being the defacto thin client, and now look where we’re at.

  6. On a lark I built Dillo and browsed a few sites that don’t use JS and the more modern CSS. Goodness gracious is it fast!
    I know it’s apples and oranges comparing it to Firefox and Chrome but it brings up two points for me:
    1) Dillo builds on my machine in a minute or two. Firefox and Chrome are both a PITA to build and a clean build gives you time to go make and drink a cuppa.
    2) I don’t believe that we’ll make the web less fat or replace it any time soon but Dillo *feels* so fast that I’m hopeful that a new stack without the web’s baggage could be amazing.

    1. the slow and difficult build i think is a big problem. we usually think of the slow user experience but that hurdle to development is considerable, and has direct and metaphorical effects on the user experience.

      i wonder how much of it is gratuitous. i know a lot of people pull in giant libraries for something they used to do in 10 lines of bespoke C. and i know large projects often pull in multiple libraries for a single task. 1MB to replace 10 lines of code for the left hand, and a different 1MB to replace the same 10 lines of code for the right hand. and sometimes we even get different versions of the same library. and then we get these mammoth cargo / gradle kind of build systems to make that nightmare tolerable, but they can at best only alleviate one of the many symptoms.

      the direct effect is the bloat and of course whatever mechanism your installer has to deal with. the metaphorical effect is that javascript is famously used the same way. a lot of people replace 10 lines of CSS or bespoke javascript with a huge chain of jQuery-related dependencies.

      i understand there are reasons — some of them even good reasons — for this kind of approach. it’s a nightmare to see the same crc32() cut and pasted a dozen times, wondering if they have different bugs or quirks, even though the remedy of a giant crypto library stinks. but i wonder sometimes if a monolithic “write the program that does the thing” approach couldn’t build a good browser today. of course the biggest challenge is that the html ecosystem changes so quickly. that monolithic program would have to replicate all of the ongoing maintenance challenges of each of the components.

  7. ” you mean it is not normal for chrome to use 90%+ cpu usage and 8GB+ of ram when i open up a web page”

    Windows-11 21H2 Build22000.2538, w/ 8G RAM Surface Pro-4 w/i5 Intel 6300 U @ 2.4GHz :
    4 instances of Edge private: one editing this page and 3 on Hackaday.com page consumes
    only 394.4MB of RAM for the browser code and only 3.5G total Physical RAM system usage (leaving 4.2G available.) All Win-11 configs are “default” on this particular test unit.

    Refreshing all 3 homepages peaked the CPU utilization to 50% on avg CPU utilization.

    This Surface Pro is NOT a current mainstream platform, long out of warranty, and purchased second-hand from a charity supporting youth access to technology… So, available for under $300 and a quick search showed some under $200.

    Point is, all the complaints about the state-of-the-Internet and modern protocols and web-tools is just a lots of useless noise. As long as the site providers are driving the development of software to create sites that showcase their content in the best possible way to enhance sales. Whether Amazon, The New York Times, or OnlyFans … a modern browser is required to create the best end-user experience. If you do not like web-assembly or javascript, then you are an “outlier” and statistically not the target user.

    Get over it.
    Our Internet Access Fees are just that, an on-ramp pseudo-tax. The actual Internet proper is being paid through site hosting and the majority of site hosting paid by consumers through subscription and fees.

    “but maybe it will promote websites to have a no-JS fallback for the Dillo users”

    When pigs fly unless there is some obvious site-hosting revenue stream; say, maybe 10% of users hit the site without a mainstream browser. And even then a cost-benefit analysis may still indicate that increased revenue may not support two presentation layers … although maybe dropping to “mobile” might be acceptable.

    1. i had to chuckle when i read “only 394.4MB of RAM” for what sounds like basically a content experience that hasn’t improved much since html/1.0.

      i agree with your prognosis and i think maybe i’m repeating you…the question on my mind is what is the “target user”. and i just want to observe that regular users care about the same things. they don’t know the word jQuery and they don’t even know 2 seconds is too long to load a website that is only delivering 100 words of content, but they feel those 2 seconds. i found out a few years ago, laptop vendors consider the browser when estimating battery life. my laptop had 20 hours of battery life when it was new but the vendor only advertised 12 hours because they assumed you’d be running a browser locally. the end user cares about the battery life.

      the target user is obviously the crap websites, and the human being we see with our eyes is just one of their products. *sigh*

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.