Functions can be added through add-ons created by third-party developers. Add-ons are primarily coded using an HTML, CSS, JavaScript, with API known as WebExtensions, which is designed to be compatible with Google Chrome and Microsoft Edge extension systems. Firefox previously supported add-ons using the XUL and XPCOM APIs, which allowed them to directly access and manipulate much of the browser's internal functionality. As compatibility was not included in the multi-process architecture, XUL add-ons have been deemed "Legacy add-ons" and are no longer supported on Firefox 57 and newer.