Build Your Own Browser

A couple of years ago, Joe Gregorio explained Why so many Python web frameworks? and showed how to create your own Web framework with a few lines of code. The most fundamental bricks are packaged in the standard python library.

There are always been many hypothesis about why the Web was successful, all of them can’t be verified, because we can’t restart the experiment. But retrospectively, it is interesting to look at what has been reused widely. libwww is a library including all modules to create a Web application, such as http, html, etc. It has been initially written by Tim Berners-Lee, and was freely available. People could just take the library and put an interface on top of it to make a browser, a Web server, an indexing bot.

One of the very difficult and technical parts of a browser is the layout (or rendering) engine. It takes the Web content and displays it after having processed the style and scripting information. Some of these layout engines are open source such as WebKit, Gecko and KHTML. Others are sometimes sold to third parties for developing specific products. Web developers take them and create new browsers or use them in their applications. For sure it is a tad more complicated than just taking the libraries but it became “easier” to create a browser. It is known as BYOB.

Layout engines used in different contexts

6 thoughts on “Build Your Own Browser

  1. I think that the idea to develop different browsers is not good. The main problem is that browsers would not comply with the standards and will show the pages incorrectly. Even now, the most spread browsers IE and Firefox do not meet the same standards. The problems with the differences are many – html standard, Javascript, AJAX …

    I would like to give an example: Cargo Freight Exchange => for every type of browser there are developed different Javascript source code. AJAX has differences in the exchange of data. IE and Firefox do not meet the same html standards. Etc.

    I think that all developers of browsers should be obliged to follow the same rules and standards. If not, I think that the development of other browsers will further deepen the problems.

  2. A small correction:

    One of the very difficult and technical part of a browser

    Should be

    One of the very difficult and technical parts of a browser

  3. I think that the idea of developing new browsers is not bad – because the forces of ROI are more powerful that cool-factor at the end of the day, so you will either:

    make a browser and some people will play with it, but it won’t hurt anything


    you will innovate in some way that creates ROI

    that said

    you may not have made the worlds most conformant browser, but if you added a feature that helps the masses, it will naturally be consumed and incorporated.


    I say that making your own browser is a great way to put your mind in the state such that it is primed to innovate, and innovation is what makes the world change in good ways (in my world at least).

  4. In my opinion it is dangerous to have so few browsers as nowadays 2010. To my knowledge, only two of them automatically ask whether you want to have a webpage translated (IE and google chrome).

    With IDN and the automatic translation of all keywords and websites that is currently going on, I think an individual user should have the choice to – per language – set ‘his’ favorite translation program. There are at least 500 on the world (and at least 10.000 search engines I guess…why so little browsers?).

    I would like to demonstrate people one can use a different than customary browser and set translation program per language. If someone could give me a hint where I can find help or stuff to build a browser, great! Though being internet engineer I have more feeling for languages than for programming.

    Thanks in advance for lightning me up on the issues a) how to build a browser (before google and microsoft totally dominate) and b) how to set a different programming software per language. Anybody seeing this may react – jpblankert @ zonnet dot nl = Philippe Blankert, NL, May 16, 2010

  5. We need new browsers. we hav to many search engines and most of them ( take sevenyoln services) are powered by google. With so many search engines we should have more browsers. I am a collector of browsers and I have: google chrome, mozilla firefox, safari ( my favorit),maxthon ( my second favorit) avont browser, lunascape, falshpeakslimbrowser, and about 5 more.

Comments are closed.