Jump to content

NetSurf

From Alfawiki
Adapted from the English Wikipedia article NetSurf, available under CC BY-SA 4.0Updated 8 August 2025
NetSurf
Company typeOpen-source software project
IndustrySoftware, Web browsers
Founded2002-04
Area served
Cross-platform (macOS, Unix-like, AmigaOS, Haiku, Atari TOS, RISC OS, Redox)
Key people
John-Mark Bell (developer)
ProductsNetSurf web browser
Websitewww.netsurf-browser.org

NetSurf is an open-source web browser that incorporates a proprietary layout engine, engineered to be both compact and portable. It includes fundamental functionalities such as tabbed browsing, bookmark management, and thumbnail previews of web pages.

Known for its resource efficiency and ongoing development activity, a 2025 Slashdot review characterizes NetSurf as “a swift gateway to the web,” well-suited for basic activities like accessing webmail, reading news, and participating in online forums.

Initially launched in April 2002 to overcome the constraints of existing RISC OS browsers, NetSurf rapidly made development builds accessible through an automated compilation system. Between 2004 and 2008, it earned the "Best non-commercial software" accolade four times in Drobe Launchpad’s annual RISC OS awards.

NetSurf is compatible with popular operating systems (macOS, Unix-like) alongside less common or legacy platforms such as AmigaOS, Haiku, Atari TOS, RISC OS, and Redox.

In 2011, it was ranked eighth among Linux browsers in evaluations by TechRepublic and ZDNet. Furthermore, in 2010 it was recognized as a graphical browser outperforming command-line alternatives like w3m.

Features

The core of NetSurf, written in ANSI C, is designed for cross-platform use and supports most of the HTML 4 and CSS 2.1 standards through its custom-built layout engine. Starting with version 2.0, it incorporates Hubbub, an HTML parser that complies with the HTML5 specification. The browser can render image formats including GIF, JPEG, PNG, and BMP, as well as formats native to RISC OS such as Sprite, Draw, and ArtWorks files.

In 2007, developer John-Mark Bell suggested integrating JavaScript support; although this feature was not present in versions 2.0 (2008) or 3.0 (2013), experimental builds featuring preliminary JavaScript capabilities were released by December 2012 and subsequently enhanced. The official release of NetSurf 3.0 took place on April 20, 2013.

History

NetSurf began in April 2002 as a web browser tailored for the RISC OS environment. A port to the GTK toolkit started in June 2004 to aid development and debugging processes, adopting numerous interface elements from the RISC OS build. The browser is included in distributions such as Ubuntu, NetBSD, and OpenBSD.

After five years of continuous development, NetSurf's inaugural stable version was released on May 19, 2007, coinciding with the Wakefield RISC OS show. Version 1.0 was made available for download through the project’s website and also distributed on CD at the event. Subsequent minor versions 1.1 (August 2007) and 1.2 (March 2008) primarily focused on resolving bugs.

NetSurf served as a mentoring organization during Google Summer of Code (GSoC) 2008, overseeing projects such as enhancements to the GTK frontend, support for paginated PDF export, and creation of the HTML5-compliant parsing library Hubbub. From August 11, 2008 onward, all development versions utilized Hubbub for HTML parsing; this library is also distributed under the MIT license for use by other software.

Selected again for GSoC participation in 2009, NetSurf’s projects involved building LibDOM (its Document Object Model implementation) and refining the user interface by transferring RISC OS-specific features—like bookmarks, global history tracking, cookie handling, and page search—into the cross-platform core. Additionally, work on a Windows port commenced during this time. The project did not engage in GSoC activities in 2010 due to developer availability constraints.

Version History

Version Release Date Details
1.0 2007-05-19 Initial stable version
1.1 2007-08
1.2 2008-03
2.0 2009-04 First launch supporting AmigaOS and BeOS/Haiku; introduced the project's HTML5 parsing tool, Hubbub.
2.1 2009-05 Maintenance update with bug corrections and layout refinements.
2.5 2010-04 Debuted use of the LibCSS CSS parser and implemented an internal cache for retrieved content.
2.6 2010-09 Delivered multiple fixes and enhancements.
2.7 2011-04 Initial release for Mac OS X; incorporated features such as bookmarking, cookie management, and browsing history.
2.8 2011-09 Added support for frames and iframes, MIME type detection, and improved image loading efficiency.
2.9 2012-04 Introduced multitasking capabilities, refined URL processing, enhanced fetcher and cache mechanisms, and accelerated CSS selector performance.
3.0 2013-04 Launched the LibDOM Document Object Model library to facilitate future dynamic layout engine development; added new textarea functionality and parallel CSS retrieval.
3.1 2014-04 Enhanced CSS selector speed, reduced startup duration, improved treeview UI components (bookmarks, history, cookies), enabled undo/redo in textareas, and upgraded form handling.
3.9 2019-07 Implemented CSS Media Queries level 4 support and advanced JavaScript processing.
3.10 2020-05 Enhanced scaling on RISC OS builds; updated HTML capabilities; upgraded Duktape JavaScript engine to version 2.4.0; revamped GTK frontend; improved authentication workflows.
3.11 2023-12 Added support for CSS flexbox layout.
  • NetSurf's development trajectory demonstrates ongoing improvements in web standards compliance and expanded platform compatibility, extending its presence across RISC OS, Linux, Unix-like systems, BeOS, Haiku, AmigaOS, Mac OS X, among others.
  • The integration of proprietary components such as Hubbub, LibCSS, and LibDOM reflects a deliberate strategy toward modular design to enhance rendering accuracy and code maintainability.
  • Latest versions prioritize performance enhancements and up-to-date web compatibility essential for maintaining competitiveness in browser markets.

Ports

A native port has been created for BeOS/Haiku. Following the GTK-based version built for AmigaOS using Cygnix (an X11 environment), a native AmigaOS port was subsequently developed. In January 2009, NetSurf was released on MorphOS, an AmigaOS-compatible platform. Additionally, a Windows version is available.

The framebuffer port launched in September 2008 distinguishes itself by drawing its own graphical interface elements instead of relying on external toolkits. This version has been utilized for web kiosk applications on embedded devices and serves as the foundation for the Plan 9 port.

In January 2010, the development team announced what was anticipated to be the final update for RISC OS, citing constrained maintenance resources. Shortly afterward, Steve Fryatt volunteered to continue supporting this port to ensure ongoing browser availability on that platform.

The Mac OS X port was announced in January 2011. Concurrently, efforts began to port NetSurf to Atari's 16-bit and 32-bit computer systems. An unofficial Nintendo 3DS port featuring TLS 1.2 support has also been produced.

visurf

visurf represents a software fork of NetSurf, developed under the guidance of Drew DeVault. It incorporates key bindings inspired by vi and operates exclusively with a Wayland-based user interface.

See also

External links