⬆️ ⬇️

Chromeless: do-it-yourself browser interface (HTML, CSS and JS)

Have you ever wanted to improve the familiar browser interface? Maybe you even tried to do it. If yes, then surely they used technologies like XUL and XPCOM . For example, in Firefox, most of the interface is implemented using XUL, which is based on standard web technologies such as DOM and JavaScript. This is all done for the convenience of developing extensions to the browser, but at the same time it is some barrier that protects the interface from outside interference.



And if the key elements of the UI were made using HTML, CSS and JavaScript? It is difficult to imagine what design ideas and new concepts would come into being if the browser interface could be shred in the manner of a web page.







The screenshot shows an example of a very simple browser with reduced screenshots of pages instead of tabs.

')

This is a Chromeless browser, which is made for demonstration purposes only, to show the possibilities of using HTML for the interface. Instead of XUL, browser elements are framed. The application is functional and is designed to demonstrate the main idea of ​​the project.



The current implementation of Chromeless is a mix of the Cuddlefish Lab and Jetpack SDK extensions along with XULRunner . The use of these technologies Mozilla allows you to create applications based on XULRunner from scratch.



Instead of loading XUL, the main executable file of the application is an HTML file. This page has various privileges, for example, it has access to JetJack CommonJS modules. Thus, the task is to ensure that the functionality of the browser can be described through these modules.







The possibility of such a solution proves the above prototype, capable of loading and rendering HTML pages. In the coming months, developers are going to add specific APIs for more meaningful design. Security issues are also being studied.



Everyone is welcome to take part in the experiment. Sources and instructions on github.com/mozilla/chromeless , communication in the Mozilla Labs Group and on the #labs IRC channel on irc.mozilla.org .



via Mozilla Labs

Source: https://habr.com/ru/post/106716/



All Articles