Browsers and Client-side Web Technologies

Igalia leads the development of essential projects and components in the areas of web rendering and browsers. We have the most WebKit, Chromium/Blink and Firefox expertise found in the consulting business, including many reviewers and committers.

WebKit is a cross-platform, Free Software web rendering engine. It is used everywhere from major Web browsers  to embedded  platforms. Our numerous contributions to the WebKit project include more than 3500 commits and 2000 reviews since 2009 leading critical areas of the project like the GStreamer media backend, the cairo 2D graphics backend, the libsoup network backend, the ATK accessibility backend and new web technologies like CSS grid layout. Igalia is also the maintainer of the GTK+ port that provides a high quality API for embedders based on the GNOME platform.

Blink started in 2013 as a fork of WebKit. It's currently used by Chrome browser and it's being adopted by other embedders. Since the transition to Blink for a WebKit developer is quite easy and natural, Igalia currently counts with several Blink committers actively working in the project.

Our developers are not only WebKit/Blink experts, they are engineers with solid backgrounds in embedded, graphics, UI design and multimedia. They integrate WebKit in user-oriented environments like the GNOME platform, where we drive the web development effort and maintain its flagship web browser, Epiphany.

As maintainers of the GTK+ and WPE ports of WebKit we have considerable experience creating, maintaining and optimizing ports of WebKit, as well as designing high level APIs for embedders.

Our  developers are knowledgeable about all aspects of Web rendering engines including  JavaScript engine, multimedia, graphics and rendering, networking, accessibility, HTML5 and API design. We can help  you improve the use of your Web framework to maximize the power of your hardware.

Featured Media

The Chromium project's Way to Wayland (FOSDEM 2018)
WPE WebKit: HTML5 User Interfaces for Embedded Devices (ELC Europe 2017)
WPE, a New WebKit Port Optimised for Embedded (IBC 2017)
The Chromium/Wayland project (Web Engines Hackfest 2017)
WebRTC(s) in WebKit(s)! (Web Engines Hackfest 2017)
Media Source Extension on WebKit (GStreamer Conference 2017)
From "WebKit for Wayland" to WPE (Web Engines Hackfest 2016)
WebKit Security Updates (GUADEC 2016)
WebKit for Wayland
WebKitForWayland on Weston IVI Shell
Maximize the Performance of HTML5 Video in RPI2 (ELC 2016)
Streams API talk (Web Engines Hackfest 2015)
CSS Grid Layout from the inside out (HTML5DevConf Autumn 2015)
WebKitGTK+: Threaded Compositor
HTTPS Achievements and Challenges (Web Engines Hackfest 2015)
CSS Grid Layout is Just Around the Corner (CSSConf US 2015)
Accelerated compositing in WebKit: Now and in the future (DEVIEW 2015)
Improving Performance of a WebKit Port MIPS Platform (ELC 2014)
CSS Regions on WebKit and Blink: Improving Selection
WebKit/Blink: CSS Grid Layout
WebKit2 And You (GUADEC 2013)
Web: The future is now (GUADEC 2013)
WebKitGTK+ Multimedia: HTML5 WebAudio API
Epiphany "Web" Browser: GNOME meets Chrome Store
WebKitGTK+: WebGL and Accelerated Compositing
WebKit2GTK+: The UI and the Web process
WebKit2GTK+: The Plugin process
Angry Birds web application - standalone on webkit
Example of Webkit running standalone app
Epiphany web browser
Epiphany web browser
Yelp, the help application for GNOME uses WebKit
Yelp, the help application for GNOME uses WebKit
Devhelp, the programming API browser for GNOME uses WebKit
Devhelp, the programming API browser for GNOME uses WebKit
WebKit logo
WebKit logo


Manuel Rego 11/01/2018

"display: contents" is coming

Yes, display: contents is enabled by default in Blink and WebKit and it will be probably shipped in Chrome 65 and Safari 11.1. These browsers will join Firefox that is shipping it since version 37, which makes Edge the only one missing the feature (you...

Manuel Rego 28/12/2017

Web Engines Hackfest 2017

One year more Igalia organized, hosted and sponsored a new edition of the Web Engines Hackfest. This is my usual post about the event focusing on the things I was working on during those days. Organization This year I wanted to talk about this because...

Michael Catanzaro 17/12/2017

Epiphany Stable Flatpak Releases

The latest stable version of Epiphany is now available on Flathub. Download it here. You should be able to double click the flatpakref to install it in GNOME Software, if you use any modern GNOME operating system not named Ubuntu. But, in my experience,...

Gyuyoung Kim 13/12/2017

What is navigator.registerProtocolHandler?

Have you heard that navigator.registerProtocolHandler javascript API? The API is to give you the power to add your customized scheme(a.k.a. protocol) to your website or web application. If you register your own custom scheme, it can help you to avoid...

Michael Catanzaro 14/11/2017

Igalia is Hiring

Igalia is hiring web browser developers. If you think you’re a good candidate for one of these jobs, you’ll want to fill out the online application accompanying one of the postings. We’d love to hear from you. We’re especially...


Revert "Just stop running all the tests"

This reverts commit 3d674bbdf9713a2ea7bdeead6bee9e4c8e337b19.

Michael Catanzaro22/02/2018

Changeset in webkit [228890]: [GTK] Unsafe g_setenv use in MiniBrowser main ...

2 edits in trunk/Tools [GTK] Unsafe g_setenv use in MiniBrowser main ​https://bugs.webkit.org/show_bug.cgi?id=182978 Reviewed by Carlos Garcia Campos. setenv (and g_setenv) will randomly crash if called too late. MiniBrowser/gtk/main.c: (main):

Michael Catanzaro21/02/2018

Changeset in webkit [228888]: [GTK] USE_UPOWER causes crashes inside a chroot or on systems with ...

6 edits1 delete in trunk [GTK] USE_UPOWER causes crashes inside a chroot or on systems with broken dbus/upower ​https://bugs.webkit.org/show_bug.cgi?id=181825 Reviewed by Carlos Garcia Campos. .: Get rid of the upower-glib dependency. We will...

Michael Catanzaro21/02/2018

Changeset in webkit [228867]: [WebVR][OpenVR] Retrieve stage parameters ...

8 edits in trunk/Source/WebCore [WebVR][OpenVR] Retrieve stage parameters ​https://bugs.webkit.org/show_bug.cgi?id=182976 Reviewed by Žan Doberšek. Use OpenVR to retrieve stage parameters, i.e., play area size and the transformation from sitting...

Sergio Villar21/02/2018

Changeset in webkit [228821]: [Cairo] Drop target GraphicsContext usage in Cairo operations ...

10 edits in trunk/Source [Cairo] Drop target GraphicsContext usage in Cairo operations ​https://bugs.webkit.org/show_bug.cgi?id=182964 Reviewed by Carlos Garcia Campos. The GraphicsContext parameters in various Cairo operations are not...

Žan Doberšek20/02/2018