Christophe Thibault, Sebastian Spaeth, Brian Harris, Jeff Doozan, Mark Liffiton, Rob Johnson, Ulf Erikson, Jordan Callicoat, Dorian Boissonnade, Roy Tam, et al.[1][2]
K-Meleon began with the goal of being faster and lighter thanMozilla's original Internet suite. Until 2011, K-Meleon embedded Gecko in a stripped-down interface. Throughout its lifespan, K-Meleon has required small amounts ofrandom-access memory (RAM). K-Meleon 76 supports discontinued versions of Windows such asWindows XP andWindows Vista. Mozilla no longer supports these platforms after theirFirefox Quantum rewrite.
Customization is another primary design goal. Users can change thetoolbars,menus, andkeyboard shortcuts from text-basedconfiguration files. K-Meleon supportsmacros, which are smallbrowser extensions that users can examine, write, or edit in atext 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 cafés and libraries in the early 2000s.
Christophe Thibault started the K-Meleon project in the 2000s,[4] when many new browsers were launched.[5] To open-source their once-dominantNetscape Communicator Internet suite,Netscape founded theMozilla project.[6] K-Meleon was one of several browsers to use Mozilla's browser engineGecko.[7] 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.[8]
Christophe Thibault released K-Meleon 0.1 on August 21, 2000.[9] While working atNullsoft,[10] Thibault said he created the first simple release to attract attention, during a day off.[11][4] For the 0.2 release, he implemented features likecontext menus and moved development toSourceForge to welcome contributions fromopen-source developers.[12]
Thibault handed the project over to new developers,[13] including Brian Harris, Sebastian Spaeth, Jeff Doozan, and Ulf Erikson,[1] who began implementing browser functions through modularKplugins.[14] The K-Meleon team released new versions withpop-up blocking andcookie management.[15] These releases introduced text-based configuration files called configs that allowed users to customize the browser or hide interface elements,[16][17] and a macro language to extend the browser.[18][19] Early reviews described K-Meleon as small, fast, limited, and visually similar to Internet Explorer.[4][9][10]
K-Meleon was built with open-source code from Mozilla but its narrower focus offered advantages over the Mozilla Application Suite,[15] which bundled the browser with applications foremail,news,chat, andwebpage editing.[20][21] To create a stand-alone browser, theGaleon project embedded Mozilla's rendering engine. Galeon was released for Linux usingGNOME's widget toolkitGTK.[22] K-Meleon brought a similar approach to Windows[23] using the operating system'snativeapplication programming interface (API) to create a lightweightuser interface (UI).[8] The K-Meleon developers released a stand-alone web browser for Windows two years before the Firefoxalpha release.[24] Mozilla created user interfaces via their cross-platformXML User Interface Language (XUL) layer.[25] This technology used Gecko to lay out application interfaces.[7] XUL allowed Mozilla to build one application for multiple operating systems but generatedgraphical controls that did not match the rest of the system.[26] K-Meleon was smaller and more closely integrated into the Windows desktop than Mozilla's browser, and could use the nativebookmarking system to accessInternet Explorer's favorites.[9][a]
K-Meleon 0.7 with a simple"Hello World" macro, the optionalTango theme, and severalNPAPI plugins installed
K-Meleon 0.7 was released with the Mozilla 1.0 engine in October 2002.[27] DespiteAOL disbandingupstream parent companyNetscape in 2003, the development of K-Meleon continued. Mozilla continued work on Gecko, and K-Meleon was updated withservice packs and version 0.8.[28] 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 toLinux.[29] In January 2006, Dorian Boissonnade became the lead developer and began working towards a 1.0 release.[30][31]
K-Meleon 1.0 was released in July 2006 and made the browser fully translatable.[b] 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.[33] K-Meleon 1.0 maintained support for its existing system of text-based configuration files and introduced a new graphical interface to changepreferences from within the browser.[34][31]
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.[35] 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.[36][35] Version 1.5 introduced a true tabbed interface.[31][c]
In Europe, version 1.5 was an optional default Windows browser through Microsoft'sbrowser ballot. Due to accusations of abusing its market position to promote Internet Explorer, Microsoft introduced a browser ballot in theEuropean Economic Area (EEA).[38] By 2010, it offered Windows users a choice of the 12 most popular web browsers, including K-Meleon.[39]
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.[40][d] In 2013, after years without an official, stable release, the K-Meleon group began developing version 74.[31] While Mozilla had ended support for embedding of Gecko, it maintained a technology calledXULRunner.[45] XULRunner was a stand-alone implementation of the Gecko engine designed to launch applications.[46] K-Meleon 74 used XULRunner instead of Mozilla's deprecated embedding software.[47][31] Outside the new engine, version 74 brought small improvements, including better CPU use and minor bug fixes.[48]
Two screenshots of K-Meleon 76 with the same K-Meleon theme but different system themes
Active development on K-Meleon takes place usingGoanna,[52] a fork of Gecko created for the browserPale Moon.[53] WithFirefox Quantum, Mozilla rewrote large parts of its browser engine.[54] In 2017, Roy Tam forked K-Meleon 76 to run on Goanna.[55] The project's former lead developer Boissonnade wrote; "Thanks for taking care of that little lizard [after I] left it".[56] 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.[19] K-Meleon has lower memory requirements than other low-resource browsers.[57]
K-Meleon is updated on arolling release schedule.[58] By default, the browser is a multi-lingual portable application that can directly run from the host computer or removable media.[59] It is also included in thePortableApps.com repository.[60] By 2023, K-Meleon was not compatible with major web apps and social media sites.[61] As of October 2024, the final planned is release is version 76.5.5.[62]
Customization of K-Meleon's interface is possible using text-format configuration files called configs.[17] Themenus,keyboard shortcuts, and more can all be customized via K-Meleon's configuration files.[63][64] These configs can call upon macros,[65] a type of extension that can be opened in a text editor.[36]
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!".[66]
HelloWorld{alert("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 theCtrl,Alt, andH keys are pressed at the same time.[65]
CTRLALTH=macros(HelloWorld)
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.[67]
NewToolbar{!NewButton{macros(HelloWorld)}}
This combination of configs and macro modules provides control over much of the browser.[68] It also creates alearning curve for customization that is not present in most browsers. ACNET review criticized K-Meleon because it "requires some knowledge of computer code to get the most out of it".[69] Popular browsers use systems likeWebExtensions, where there is a separation between users and extension developers.[70][71]
Because of its flexibility, K-Meleon was useful for environments in which the browser needed to be customized forpublic use, such aslibraries andInternet cafés.[72] It allowed administrators to hide some features from patrons.[73] For example, a library could hide interface elements like the address bar or limit the computer's access to an online resource like thelibrary catalog.[17]
Web browsers cannot access secure websites if they do not supportTransport Layer Security (TLS)encryption.[81] As of 2018, most major web sites use TLS encryption viaHTTPS.[82][f] Early versions of K-Meleon for Windows 2000 andWindows 9X receive occasional updates for TLS certificates.[19] K-Meleon 74 can access secure websites on Windows 2000 using an old version of the Goanna engine combined with up-to-dateciphers.[84] K-Meleon 1.5 can run onWindows 95,Windows 98, andWindows Me.[85] Occasional TLS updates allow version 1.5 to access secure websites.[86]
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.[g]
^Version 0.2 is the first version hosted at SourceForge and introduced right-click context menus.
^Version 0.3 is a rewrite using MfcEmbed instead of WinEmbed and the BCG Library. It introduced Kplugin support for menus and toolbars, a preferences dialog, customizable menus and accelerator keys, basic authentication, page source view, and the option to save files to disk.
^Version 0.4 introduced support for Netscape bookmarks, full-screen display, the macro extension Kplugin, the history Kplugin, icons in menus, cache support, configurable cookie and image settings, and the option to disable Java and JavaScript.
^Version 0.7 introduced layered windows for "tabbed browsing", support for Opera bookmarks, automatic detection of popular third-party (NPAPI) plugins, text zoom, print preview, page setup, type ahead find, and skin support.
^Version 0.9 introduced the Privacy Kplugin, the Flashblock extension, an RSS feed reader, and a new default skin (Phoenity). It was updated with community-driven Gecko updates.
^Version 1.0 introduced full localization support, the first official localization (German), updates to the URL bar, configurable download options, a XUL-based advanced preferences panel, Gecko updates, improvements in Unicode handling for macros and menus, and a new defaultRSS/Atom feed reader (NewsFox).
^Version 1.1 expanded multi-language support. It introduced several official localizations, modular macros, the session saver Kplugin, new customization of search engines and mouse gestures, multi-user configuration files, Gecko updates, and the update checker Kplugin.
^Version 1.5 replaced the native preferences panel with the XUL-based former advanced preferences panel. It introduced true tabs instead of layered windows, new configuration options, a Unicode build for Windows NT, a non-Unicode build for Windows 9X, and Gecko updates.
^Version 74 transitioned away from embedding Gecko to update the browser engine. The jump in version number is related to K-Meleon'suser agent string.
^Version 75 introduced Gecko updates, an expanded JSBridge, an expanded macro language, support for "about:" pages, new spellcheck features, and a shorter privacy bar using text. It enabled the container forAdobe Flash by default.
^Version 76 never had an official stable release, and RC2 was only offered in portable form.
^Version 76 on Goanna (also referred to as KM-Goanna, 76.G or 76G) is a new branch that switched from Gecko to Goanna.
General references for this table include K-Meleon file releases,[116] release notes,[117] changelogs,[50] and the Announcements forum.[118]
^This approach of embedding Gecko into a native interface was also used byCamino onmacOS.[7]
^Previous versions could be translated because they wereopen-source. Thesource code could be downloaded, the source files translated, the browser code recompiled, and the resulting application distributed under an open-source license.[32]
^Previously used in unofficial builds, true tabs supporteddrag and drop, could have individual closeicons, and could be placed on the bottom of the window.[37]
^The situation also left the future of other embedded Gecko browsers unclear. Camino's developers initially explored transitioning to theWebKit rendering engine.[41] Mozilla later discontinued the Mac-only browser.[42] Marco Gritti, the lead developer of Galeon, had already forked that project to createGNOME Web,[43] which was switched to aWebKitbackend. GNOME Web developer Christian Persch described Mozilla's support for embedding of Gecko on Linux as "unmaintained and stagnant".[44]
^ReactOS, the open-source implementation of Windows, only targets compatibility up to the discontinuedWindows Server 2003.[77]
^ Popular browsers like Chrome, Edge, Safari, and Internet Explorer rely on the operating system forclient certificates. Mozilla software can use client certificates directly from the browser.[83]
^K-Meleon can run onPOSIX-compliant systems if they have an implementation of the Windows API like theWine compatibility layer.[74]
^abErikson, Ulf; Holman; Mutch; Moses; Sachner; Zarneth (2002)."§ 8.1 Acknowledgements".K-Meleon User's Guide and Reference Manual. K-Meleon Documentation Project.Archived from the original on August 25, 2007. RetrievedDecember 22, 2022.
^"About K-Meleon" (Credits for K-Meleon 76). K-Meleon Project. 2017.
^Dunsdon, Nicole (October 11, 2000). "Rebel Web browsers worth considering".Calgary Herald. p. TB4.
^abcBoswell, David; King, Brian; Oeschger, Ian; Collins, Pete; Murhpy, Eric (September 24, 2002)."Mozilla as Platform". In Boswell, David (ed.).Creating Applications with Mozilla.O'Reilly Media. p. 7.Archived from the original on February 2, 2023. RetrievedFebruary 2, 2023.
^Erikson, Ulf; Holman; Mutch; Moses; Sachner; Zarneth (2002)."§ 4.6 Configs".K-Meleon User's Guide and Reference Manual. K-Meleon Documentation Project.Archived from the original on May 21, 2018. RetrievedDecember 22, 2022.
^Erikson, Ulf (January 8, 2005)."K-Meleon: Dead or Alive?".kmeleon-dev@lists.sourceforge.net (Mailing list).Archived from the original on December 18, 2022. RetrievedSeptember 17, 2022.
^Karaboychev, Kalin (July 14, 2008)."K-Meleon – инсталация и настройки".Kaldata (in Bulgarian). Kaldeita Kom EOOD.Archived from the original on December 31, 2022. RetrievedDecember 31, 2022. (Refer to the visual tour of the "Advanced Preferences" panel.)
^abKohler, Klaus (May 9, 2007)."What's new?".K-Meleon 1.x Reference. Archived fromthe original on September 24, 2009. RetrievedFebruary 9, 2023.
^ab"K-Meleon Macro Module".FileInfo – The File Extensions Database. Sharpened Productions. August 12, 2009.Archived from the original on March 18, 2023. RetrievedMarch 18, 2023.
^Wang, Mao (August 23, 2009)."快速网页浏览器K-MeleonCCF ME 0.094版".MyDrivers.com. 驱动之家.Archived from the original on December 23, 2022. RetrievedDecember 23, 2022.K-MeleonCCF是一个非官方K-Meleon版本,源自K-Meleon 1.0 branch。最新CCF版与最新K-Meleon 官方版间最大的不同在于CCF版支持"real tab structure"(由Dorian开发)。[...] K-MeleonCCF ME 0.09版本的标签上可以显示关闭按钮, 标签栏可以置于窗口的下方。 [K-MeleonCCF is an unofficial K-Meleon version that comes from the K-Meleon 1.0 branch. The biggest difference between the latest CCF version and the latest K-Meleon official version is that the CCF version supports "true tab structure" (developed by Dorian). [...] K-MeleonCCF ME version 0.09 can display a close button on each tab, and the tab bar can be placed at the bottom of the window.]
^Persch, Chris (April 1, 2008)."ANNOUNCEMENT: The Future of Epiphany".Gnome Development Announcements List (Mailing list). GNOME Project.Archived from the original on August 22, 2022. RetrievedAugust 28, 2022.
^Feldt, Kenneth (February 9, 2009).Programming Firefox.O'Reilly Media. p. 374.XULRunner is a deployment method that uses the stand-alone Gecko runtime engine (also known as XULRunner) to launch XUL applications.
^Serea, Razvan (November 26, 2014)."K-Meleon 75 Beta 1".Neowin. Neowin LLC.Archived from the original on December 22, 2022. RetrievedDecember 21, 2022.
^Kohler, Klaus (November 27, 2006)."Configuration Files".K-Meleon 1.x Reference. Archived fromthe original on September 23, 2009. RetrievedFebruary 9, 2023.
^abDoozan, Jeff (2001). "Macro Definition File for K-Meleon 0.6 (macros.cfg)" (Documentation). K-Meleon. Doozan described the accelerator syntax to add a macro command as "Sample Usage: in accel.cfg KEY = macros(example)" with "example" being the name of an individual macro sections enclosed in brackets.
^Erikson, Ulf; Holman; Mutch; Moses; Sachner; Zarneth (2002)."§ 7.7 Macro Language".K-Meleon User's Guide and Reference Manual. K-Meleon Documentation Project.Archived from the original on February 9, 2023. RetrievedDecember 22, 2022.
^Doozan, Jeff (2001). "Toolbar Definition File for K-Meleon 0.6 (toolbars.cfg)" (Documentation). K-Meleon. Doozan documents the formatting as "ToolBar Name { Button Name { command id (required) } }" with many optional parameters including size, "Tool Bar(16,16){= NAME OF TOOLBAR* (WIDTH, HEIGHT), DEFAULT=(16,16)", and bitmap "image file[s]" for various states.
^For versions 0.2–0.8.2:"File Releases". Archived fromthe original on June 4, 2006. RetrievedJanuary 6, 2023. (Individual version release notes available under the respective [Notes] link.)
^For versions 1.1–76:"K-Meleon: Announcements". Kmeleon.sourceforge.net.Archived from the original on September 13, 2022. RetrievedNovember 25, 2014.
Unified XUL Platform MDN Backup – Archive of pre-Quantum Mozilla documentation applicable to the Goanna engine and UXP applications
Roy Tam's repositories on GitHub – Refer to developer Roy Tam's repositories for the latest version of the browser shell and browser engine source code