# Gecko (software)

Gecko es un motor de renderizado libre escrito en C++ y originalmente desarrollado por Netscape. Actualmente su desarrollo es gestionado por la Fundación Mozilla y la Corporación Mozilla.
Gecko es una plataforma para aplicaciones multiplataforma, es decir: permite ejecutar aplicaciones sobre su motor que se sirvan de tecnologías como XUL, XBL, PNG, HTTP, POP3, SMTP, RDS, CSS virtualmente en cualquier sistema operativo.
Anteriormente Gecko fue conocido con los nombres Raptor y NGLayout.

## Historia

El desarrollo del motor de diseño ahora conocido como Gecko se inició por Netscape en 1997, tras la compra de la compañía DigitalStyle. El motor de renderizado existente en Netscape, fue escrito originalmente para Netscape Navigator 1.0 y mejorado a través de los años, fue considerado ampliamente como inferior al utilizado en Microsoft Internet Explorer. Era lento, no cumplía así con los estándares del W3C, tenía un apoyo limitado a HTML dinámico y carecía de características tales como reflujo incrementales (cuando el motor de diseño reordena los elementos en la pantalla como los nuevos datos se descarga y se añaden a la página). El nuevo motor de diseño se desarrolló en paralelo en el tiempo, con la intención de ser integrado en Netscape Communicator cuando fuera estable y completo. Se esperaba al menos a una revisión importante de Netscape para ser lanzado con el, antes de que el antiguo motor de diseño se interrumpiera.
Después de la puesta en marcha del proyecto Mozilla a principios de 1998, el nuevo código de motor de diseño se liberó bajo una licencia de código abierto. Originalmente presentado como Raptor , el nombre tuvo que ser cambiado a NGLayout (diseño de próxima generación), debido a problemas del registro de Marca. Netscape lo rebautizó como NGLayout Gecko . Aunque la Mozilla Organization (la precursora de la Fundación Mozilla ) inicialmente continuó utilizando el nombre NGLayout (Gecko era una marca comercial de Netscape), con el tiempo, la marca Gecko se impuso.
En octubre de 1998, Netscape anunció que su próximo navegador usaría Gecko (que todavía se llamaba NGLayout en ese momento) en lugar del viejo motor de diseño, lo que requería que grandes partes de la aplicación tuvieran que ser reescritas. Si bien esta decisión fue popular entre los partidarios de las normas web, era en gran medida impopular entre los desarrolladores de Netscape, que estaban descontentos con los seis meses dados para la reescritura. También significó que la mayor parte del trabajo realizado para Netscape Communicator 5.0 (incluido el desarrollo de los Mariner, mejoras en el motor viejo diseño) tuvieron que ser abandonados. Netscape 6, la primera versión de Netscape que incorporó Gecko, fue lanzado en noviembre de 2000 (el nombre Netscape 5 nunca se utilizó).
A medida que continuaba el desarrollo Gecko, otras aplicaciones y embedders comenzaron a hacer uso de ella. America Online , en este momento la empresa matriz de Netscape, finalmente lo aprobó para su uso en CompuServe 7.0 y AOL para Mac OS X (estos productos habían incorporado previamente Internet Explorer). Sin embargo, con la excepción de algunas betas , Gecko nunca se utilizó en el principal cliente de AOL Microsoft Windows.
El 15 de julio de 2003, AOL despidió a los desarrolladores Gecko restantes y la Fundación Mozilla (formado en el mismo día) se convirtió en el servidor principal del desarrollo Gecko. Hoy en día, Gecko es desarrollado por los empleados de la Fundación Mozilla, los empleados de las empresas que contribuyen al proyecto Mozilla, y por voluntarios.

## Soporte de estándares

Gecko fue diseñado para soportar estándares de Internet libres. Algunos de los estándares que Gecko soporta son:
* HTML5
* CSS Nivel 3
* JavaScript (ECMAScript ES6 o superior, actualmente ECMAScript 2021 ES12), implementado en SpiderMonkey
* DOM Nivel 4
* XML 1.0
* XHTML 1.0
* XSLT y XPath, implementado en TransforMiiX
* MathML
* XForms (a través de una extensión oficial)
* RDF
* SVG

## Software donde se utiliza Gecko

Sistemas Operativos:
* Firefox OS
* B2G OS (BootToGecko OS)
Navegadores:
* Camino (para Mac OS X)
* Epiphany (para GNOME) hasta versión 2.26.3
* Firefox
* Waterfox
* Flock
* K-Meleon (para Windows)
* IceWeasel
* GNU IceCat
* Fennec
* Pale Moon
* Maxthon (aunque usa el motor Trident incorpora soporte para Gecko).
* Minimo
* Netscape Navigator 6.0 y superior
* Pampa Browser
Clientes de correo electrónico:
* Thunderbird
* Icedove
* Postbox
Suites de Internet:
* Mozilla Application Suite
* SeaMonkey
Otros:
* BlueGriffon
* Nvu
* Songbird
* Mozilla Sunbird
* Mozilla Labs Snowl

## Uso

Gecko se usa principalmente en navegadores web, siendo el más conocido Firefox. Otros programas, como Picasa para GNU/Linux (el software de organización de fotografías de Google), o el reproductor de archivos multimedia Songbird también están basados en Gecko. La siguiente tabla compara las diferentes versiones de Gecko:
| Versión de Gecko | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Solo Windows | Solo Windows | Solo Windows | Solo Mac | Solo *nix | Solo *nix | Solo *nix | Móvil *nix |
| Versión de Gecko | Firefox | Netscape | Mozilla | SeaMonkey | Flock | Songbird | Beonex | Lunascape | K-Meleon | My Internet Browser | Camino | Galeon | Epiphany | Kazehakase | MicroB |
| 0.6 | | 6.0 | 0.6 | | | | 0.6 | | | | | | | | |
| 0.8 | | | 0.8 | | | | | | 0.3 | | | | | | |
| 0.9.2 | | 6.1 | 0.9.2 | | | | | | | | | | | | |
| 0.9.4 | | 6.2 | 0.9.4 | | | | | | 0.5 | | | | | | |
| 0.9.4.1 | | 6.2.2 | 0.9.4.1 | | | | 0.7 | | | | | | | | |
| 0.9.5 | | | 0.9.5 | | | | | | 0.6 | | | | | | |
| 0.9.7 | | | 0.9.7 | | | | | | | | | 1.0.2 | | | |
| 1.0.1 | | 7.0 | 1.0.1 | | | | 0.8.1 | | | | | | | | |
| 1.0.2 | | | 1.0.2 | | | | 0.8.2 | | | | | | | | |
| 1.1 | | | 1.1 | | | | 0.9pre | | | | | | | | |
| 1.2b | 0.1 | | 1.2b | | | | | | 0.7 | | | | | | |
| 1.3a | 0.5 | | 1.3a | | | | | | | | | | | | |
| 1.4 | | 7.1 | 1.4 | | | | | | | | | | | | |
| 1.4.1 | | | 1.4.1 | | | | | | | | | 1.0.4 | | | |
| 1.5 | 0.7 | | 1.5 | | | | | | 0.8 | | | | | | |
| 1.7 | 1.0 | | 1.7 | | | | | | | | | 2.0 | | 0.2.8 | |
| 1.7.2 | | 7.2 | 1.7.2 | | | | | | | | | | | | |
| 1.7.5 | | 8.0.2 | 1.7.5 | | | | | | 0.9 | | | | | | |
| 1.8.0 | 1.5 | | | 1.0 | 0.7 | 0.2 | | | 1.0 | 1.0 | 1.0 | | | | |
| 1.8.1 | 2.0 | 9.0 | | 1.1 | 1.0 | | | 4.8 | 1.1, 1.5 | 2.0 | 1.6.5 | | 2.16 | | |
| 1.9.0 | 3.0 | | | | 2.0 - 2.6 | 0.5 - 1.4 | | | | 2.2 | 2.0 | | 2.22 | | |
| 1.9.1 | 3.5 | | | 2.0 | | | | 5.0 | 1.6 | 3.0 | | | | | |
| 1.9.2 | 3.6 | | | | | 1.9.3 | | 6.3 | 1.7 | 4.0 | 2.1a1 | | | | 1.7.4.8 |
| 2.0 | 4.0 | | | 2.1 | | | | | | | | | | | |
| 5.0 | 5.0 | | | 2.2 | | | | | | | | | | | |
| Gecko version | Firefox | Netscape | Mozilla | SeaMonkey | Flock | Songbird | Beonex | Lunascape | K-Meleon | My Internet Browser | Camino | Galeon | Epiphany | Kazehakase | MicroB |
| Gecko version | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Todos las plataformas | Solo Windows | Solo Windows | Solo Windows | Solo Mac | Solo *nix | Solo *nix | Solo *nix | Móvil *nix |
* 1 2 3 4 5 6 7 8 9 10 El desarrollo se ha interrumpido.
* 1 2 3 4 5 6 El explorador incluye WebKit como motor alternativo.
* 1 2 3 El explorador incluye Trident como motor alternativo.
* 1 2 El explorador ha dejado de usar el motor Gecko.
* ↑ Usa Gecko 1.9.2.3pre en Fremantle 1.3.
* ↑ Hasta el 28 de junio de 2010 se usaba Gecko 1.9.3 en Firefox 3.7.
* ↑ A partir de Firefox 5, el número de versión de Gecko será el mismo de Firefox.
Otros programas no recogidos en la tabla anterior son Sugar, Swiftfox, konqueror, HP Secure Web Browser, ReactOS Explorer, Oxygen, Sleipnir, Minimo, Sylera (para móviles), Thunderbird (cliente de correo), Sunbird (calendario) y Instantbird (mensajería instantánea).