Dillo, a multi-platform graphical web browser
Architecture & Platform Support
- Dillo uses the FLTK GUI toolkit (moved from an early GTK+ codebase around Dillo 2).
- FLTK has been ported to DOS; there were DOS/Windows ports of Dillo 3.0, but they never landed upstream. Maintainer is open to merging them if someone helps update the code.
- FLTK 1.4.x currently breaks many things in Dillo; experimental support is planned behind a configure flag in an upcoming 3.3.0 release.
Project Status & Infrastructure
- Active development continues, with recent 3.x releases and adherence to semantic versioning.
- The project is moving off GitHub to its own site, cgit repos, and a custom “buggy” bug tracker where issues are Markdown files stored in git.
- Motivation: speed, offline use, JS-free workflows, interoperability outside a corporate walled garden, and minimal bandwidth.
Design Philosophy, JS, and the Modern Web
- Dillo intentionally has no JavaScript support; many commenters see this as therapeutic and a feature, not a bug.
- This exposes how much of the modern web is JS-gated: Google Search and Maps now block non-JS browsers; alternatives like DuckDuckGo Lite and Startpage still work.
- Some argue any site requiring JS for basic functionality is “a bad website” and should be avoided; others note this makes Dillo unusable for many everyday sites.
Performance, Use Cases & Comparisons
- Widely praised as extremely fast and lightweight (tiny binary, runs well on 40–64 MB RAM, old laptops, netbooks, BSD on i386, OLPC, PDAs).
- Often contrasted with NetSurf: NetSurf is more standards-compliant and familiar; Dillo is lighter, more brutalist, and more idiosyncratic.
- Users report success on modern low-power devices (e.g., ARM tablets), using curated “lightweight” sites.
Standards & Compatibility
- CSS support exists but is incomplete; an old CSS compatibility page is acknowledged as outdated.
- Maintainer views Web Platform Tests as the best indicator of support and has experimented with integrating them, but many tests require JS.
Security & Sandboxing
- Some concern that “ultralight” might also mean light on security features.
- Maintainer has experimented with pledge and Landlock; proper multi-process isolation would require internal redesign and is a longer-term goal. Short-term: CSS/images and specific image decoders can be disabled.
Related Projects & Ecosystem
- Discussion touches on various forks (Dillo+, Mobilized Dillo) and alternative lightweight engines (e.g., a Rust-based engine reusing Servo components).
- Dillo is cited in “suckless” circles and remembered from Damn Small Linux and other minimalist distros.