K-Meleon

K-Meleon is a free and open-source, lightweight web browser for Microsoft Windows. It uses the native Windows API to create its user interface. Early versions of K-Meleon rendered web pages with Gecko, Mozilla's browser layout engine, which Mozilla's browser Firefox and its email client Thunderbird also use. K-Meleon became a popular Windows browser and was available as an optional default browser in Europe via BrowserChoice.eu. K-Meleon continued to use Gecko for several years after Mozilla deprecated embedding it. Current versions of K-Meleon use the Goanna layout engine, a fork of Gecko created for the browser Pale Moon.

K-Meleon began with the goal of being faster and lighter than Mozilla's original internet suite. Until 2011, K-Meleon embedded Gecko in a stripped-down interface. Throughout its lifespan, K-Meleon has required small amounts of random-access memory (RAM). K-Meleon 76 supports discontinued versions of Windows such as Windows XP and Windows Vista. Mozilla no longer supports these platforms after their Firefox Quantum rewrite.

Customization is another primary design goal. Users can change the toolbars, menus, and keyboard shortcuts from text-based configuration files. K-Meleon supports macros, which are small browser extensions that users can examine, write, or edit in a text editor. K-Meleon's custom configuration files can trigger macros. Reviews describe the customization features as versatile but intimidating to the average user. Due to its adaptability, K-Meleon was recommended for internet cafes and libraries in the early 2000s.

History
Christophe Thibault started the K-Meleon project in the 2000s, when many new browsers were launched. To open-source their once-dominant Netscape Communicator internet suite, Netscape founded the Mozilla project. K-Meleon was one of several browsers to use Mozilla's browser engine Gecko. Thibault designed K-Meleon to combine Gecko with native Windows interface elements, an approach that was less resource-intensive and allowed the browser to blend into its environment.

Embedding Gecko


Christophe Thibault released K-Meleon 0.1 on August 21, 2000. While working at Nullsoft, Thibault said he created the first simple release to attract attention, during a day off. For the 0.2 release, he implemented features like context menus and moved development to SourceForge to welcome contributions from open-source developers.

Thibault handed the project over to new developers, including Brian Harris, Sebastian Spaeth, Jeff Doozan, and Ulf Erikson, who began implementing browser functions through modular Kplugins. The K-Meleon team released new versions with pop-up blocking and cookie management. These releases introduced text-based configuration files called configs that allowed users to customize the browser or hide interface elements, and a macro language to extend the browser. Early reviews described K-Meleon as small, fast, limited, and visually similar to Internet Explorer.

K-Meleon was built with open-source code from Mozilla but its narrower focus offered advantages over the Mozilla Application Suite, which bundled the browser with applications for email, news, chat, and webpage editing. To create a stand-alone browser, the Galeon project embedded Mozilla's rendering engine. Galeon was released for Linux using GNOME's widget toolkit GTK. K-Meleon brought a similar approach to Windows using the operating system's native application programming interface (API) to create a lightweight user interface (UI). The K-Meleon developers released a stand-alone web browser for Windows two years before the Firefox alpha release. Mozilla created user interfaces via their cross-platform XML User Interface Language (XUL) layer. This technology used Gecko to lay out application interfaces. XUL allowed Mozilla to build one application for multiple operating systems but generated graphical controls that did not match the rest of the system. K-Meleon was smaller and more closely integrated into the Windows desktop than Mozilla's browser, and could use the native bookmarking system to access Internet Explorer's favorites.



K-Meleon 0.7 was released with the Mozilla 1.0 engine in October 2002. Despite AOL disbanding upstream parent company Netscape in 2003, the development of K-Meleon continued. Mozilla continued work on Gecko, and K-Meleon was updated with service packs and version 0.8. In 2005, Ulf Erikson announced version 0.9 would be the final version of K-Meleon he would build. He was the project's developer but stated he was no longer using K-Meleon as his primary browser after moving to Linux. In January 2006, Dorian Boissonnade became the lead developer and began working towards a 1.0 release.

K-Meleon 1.0 was released in July 2006 and made the browser fully translatable. It stored localizations in separate library-and-config files within existing K-Meleon installations. Parts of the browser could be translated in a text editor. K-Meleon 1.0 maintained support for its existing system of text-based configuration files and introduced a new graphical interface to change preferences from within the browser.

Version 1.1 expanded the macro system. Earlier versions placed all of the macros into a single config file. Initial releases came with fewer than 50 lines of macro code and instructions for end users to create their own macros. Later versions came with over 1,000 lines of macro code, and the macros users wrote and shared online. In response, K-Meleon developers separated macros into modules. Version 1.5 introduced a true tabbed interface.

In Europe, version 1.5 was an optional default Windows browser through Microsoft's browser ballot. Due to accusations of abusing its market position to promote Internet Explorer, Microsoft introduced a browser ballot in the European Economic Area (EEA). By 2010, it offered Windows users a choice of the 12 most popular web browsers, including K-Meleon.

7x releases
In 2011, Mozilla ended support for embedding the Gecko layout engine; because K-Meleon had previously relied on this API, the browser's future became uncertain. In 2013, after years without an official, stable release, the K-Meleon group began developing version 74. While Mozilla had ended support for embedding of Gecko, it maintained a technology called XULRunner. XULRunner was a stand-alone implementation of the Gecko engine designed to launch applications. K-Meleon 74 used XULRunner instead of Mozilla's deprecated embedding software. Outside the new engine, version 74 brought small improvements, including better CPU use and minor bug fixes.

K-Meleon 75 included a spelling checker, form auto-completion, and a new skin system. Boissonnade began work on version 76 but suffered a hard disk drive failure during beta testing.

Goanna branch


Active development on K-Meleon takes place using Goanna, a fork of Gecko created for the browser Pale Moon. With Firefox Quantum, Mozilla rewrote large parts of its browser engine. In 2017, Roy Tam forked K-Meleon 76 to run on Goanna. The project's former lead developer Boissonnade wrote; "Thanks for taking care of that little lizard [after I] left it". K-Meleon on Goanna remains compatible with deprecated versions of Windows and can run with smaller amounts of RAM than those required by mainstream web browsers. K-Meleon has lower memory requirements than other low-resource browsers.

K-Meleon is updated on a rolling release schedule. By default, the browser is a multi-lingual portable application that can directly run from the host computer or removable media. It is also included in the PortableApps.com repository.

Customization
Customization of K-Meleon's interface is possible using text-format configuration files called configs. The menus, keyboard shortcuts, and more can all be customized via K-Meleon's configuration files. These configs can call upon macros, a type of extension that can be opened in a text editor.

A simple "Hello, World!" program could be written in K-Meleon's macro language that would pop up a small window with the message "Hello world!".

To trigger the macro, a keyboard accelerator could be created by adding the code below to the accelerator config, causing the macro to launch if the Ctrl, Alt , and H keys are pressed at the same time.

Custom toolbars offer more options, but the syntax is similar. The example below would create a new toolbar with a button to trigger a macro.

This combination of configs and macro modules provides control over much of the browser. It also creates a learning curve for customization that is not present in most browsers. A CNET review criticized K-Meleon because it "requires some knowledge of computer code to get the most out of it". Popular browsers use systems like WebExtensions, where there is a separation between users and extension developers.

Because of its flexibility, K-Meleon was useful for environments in which the browser needed to be customized for public use, such as libraries and internet cafés. It allowed administrators to hide some features from patrons. For example, a library could hide interface elements like the address bar or limit the computer's access to an online resource like the library catalog.

Legacy Windows versions
K-Meleon supports a range of legacy software and hardware. Version 76 supports Windows XP (2001) and Windows Vista (2006). Windows XP and its Windows Embedded POSReady 2009 variant have been unsupported since 2019. The latest major browser releases to support these operating systems are Microsoft's Internet Explorer 8 (2014), Google Chrome 49.0.2623.112 (2016), and Mozilla Firefox 52.9.0 (2018).

Web browsers cannot access secure websites if they do not support Transport Layer Security (TLS) encryption. As of 2018, most major web sites use TLS encryption via HTTPS. Early versions of K-Meleon for Windows 2000 and Windows 9X receive occasional updates for TLS certificates. K-Meleon 74 can access secure websites on Windows 2000 using an old version of the Goanna engine combined with up-to-date ciphers. K-Meleon 1.5 can run on Windows 95, Windows 98, and Windows Me. Occasional TLS updates allow version 1.5 to access secure websites.

Release history
K-Meleon, which was first released in 2000, has been under development for over 20 years and is still maintained. The most-recent version K-Meleon 76 is updated on a rolling release schedule. All versions of K-Meleon are written for Microsoft Windows operating systems.