Page 1 of 1

Browser-dev?

Posted: Thu Sep 07, 2017 9:04 pm
by Artlav
Having made my own IP stack, i wondered where to next.

And it occurred to me that making a whole web browser sounds like a task akin to making an OS.
It's a program that works with semi-standard data, have it's own flow control, got it's own task control and multitasking (tabs/js threads), got it's own drivers (network, proxy, FTP, TLS/SSL, sound and video codecs and so on), got a whole GUI with a lot of stuff in it (CSS, fonts and what not), got compilers for it (asm.js), and so on.

It's a large, complex thing that encompasses most of the features of an OS, and can even act as one for many not-too-complex use cases.

So, have anyone actually tried to make their own browser?
Is there some sort of a browser-dev community around?
Is it a task that is achievable on amateur level from scratch (in pre-JS days i didn't even think of it as being hard, these days it looks hellishly hard...)?

I've already got most of the backbone pieces - IP stack, TLS, HTTP, HTML parser, image format readers, UTF parser and renderer and so on.
I need to make an HTML renderer (with CSS) to get a basic thing, and a JS engine to operate the HTML to get anything non-trivial going.

Re: Browser-dev?

Posted: Wed Sep 20, 2017 11:54 am
by Coconut9
Just count the number of html tags and you will find that the browser will be the last application you will make! :wink:

Re: Browser-dev?

Posted: Fri Sep 22, 2017 8:35 am
by Notturno
Unfortunately there is no place like osdev.org for browser development. However there is Mozillazine: http://forums.mozillazine.org
They have a development section:
http://forums.mozillazine.org/viewforum.php?f=54

They will probably help you if you're developing a Gecko based browser. If you're writing a browser from scratch then you are on your own.

Re: Browser-dev?

Posted: Mon Oct 02, 2017 10:19 am
by MajickTek
I made a browser in VB 2015 but it used Microsoft's webview thing to display [mobile] web pages and used a listbox to store "bookmarks", which were just copied URLs.

Not what you want, i think. To simple :D

Re: Browser-dev?

Posted: Mon Oct 02, 2017 10:50 am
by onlyonemac
Probably worth mentioning that a browser doesn't usually implement its own networking, SSL/TLS, or codecs as these are installed separately or are part of the operating system. Networking is part of the operating system (as either part of your kernel or a driver/kernel module depending on the design of your operating system) and codecs may be part of the operating system or may be installed separately as plugins for a particular multimedia API and multimedia applications (web browsers, video players, etc.) can use whatever codecs are installed and compatible with the application but the codecs themselves aren't part of the applications that use them.

The same goes for multithreading/multitasking - this isn't part of the browser itself and usually the browser will use the operating system's own multithreading API.