Browse++ A C++ Browser Engine from Scratch.
Overview:
Over the course of 2 months and almost 300 hours (165 coding) of work, I built a browser engine that can download, parse, and render websites with tab handling and a lot of other cool features, from almost complete scratch!
What’s a Browser Engine?
A basic definition of a browser engine is a program that pulls content from a website, then takes that content, gives the elements the properties assigned in the CSS, and then renders the content on the screen. They end up being very difficult to build, as HTML and CSS can run and be run without errors, so that makes it super hard to build an engine that can properly handle, parse, and render a site with a lot of errors.
How to use this?
If you would like to use my browser engine, there is quite a few ways to do so!
NOTE: I do not have an actual Linux laptop, so the Linux version is super buggy (and does not have any networking), but I really hope to fix that in the future, but you can use the more outdated web demo!
If you don’t want to download anything, you can use the Web Demo, its a bit behind, but it shows it nicely.
If you are willing to download, and you are on windows, you can go to the github here and download to try it!
If you want to see the real thing, I have a video going through it here.
What am I most proud of?
I think the thing I’m most proud of was the amount of browser systems i was able to build from scratch , this was a super fun thing to build, but it had a lot of challenges and ups and down, and a lot of hours fixing bugs that make no sense at all lol!
The other thing I’m most proud of is not using any AI on the main engine; there was a bit of AI used for the web demo, as that wasn’t my main focus, but the browser engine overall used absolutely no AI!
AI usage
GLM 5.2 was used to convert the Windows code to a web server for Linux (way before I supported Linux). Any code changes are clearly marked with (// CHANGED WITH AI: ...) if they have been changed with AI, and very little has been changed.
- 46 devlogs
- 165h
- 19.10x multiplier
- 3160 Stardust