- HTML rendering - which is insanely complex to do efficiently for arbitrary web apps.
- Video conferencing software
- A graphics engine. Used for rendering web content, canvas2d, webgl, webgpu and video encoding & decoding for a bunch of formats. It also has a bunch of backends (eg CPU, Metal, Vulcan, etc)
- JS, and every feature ever added to JS.
- WASM compiler, optimizer & runtime
- Memory manager, process isolation per tab, and all the plumbing to make that work.
- The Inspector - which contains a debugger and most of an IDE for JS, WASM, CSS and HTML.
- So much interop. Like chromecast support, http1, http2, quic, websockets, webtransport, webrtc, javascript remote debugger protocol, support for lots of pre-unicode text formats, DoH, webdriver, and on and on.
- Extension support
- Gamepad drivers, web bluetooth, webserial, midi support
What am I missing? Probably lots of stuff. I have no idea how much each of these components contributes to browser bloat. But all up? Its a lot. Chrome is bigger than most complete operating systems from a decade or two ago. Browser vendors have to pick between fast, simple and fully featured. Chrome sacrifices simplicity every time.
- HTML rendering - which is insanely complex to do efficiently for arbitrary web apps.
- Video conferencing software
- A graphics engine. Used for rendering web content, canvas2d, webgl, webgpu and video encoding & decoding for a bunch of formats. It also has a bunch of backends (eg CPU, Metal, Vulcan, etc)
- JS, and every feature ever added to JS.
- WASM compiler, optimizer & runtime
- Memory manager, process isolation per tab, and all the plumbing to make that work.
- The Inspector - which contains a debugger and most of an IDE for JS, WASM, CSS and HTML.
- So much interop. Like chromecast support, http1, http2, quic, websockets, webtransport, webrtc, javascript remote debugger protocol, support for lots of pre-unicode text formats, DoH, webdriver, and on and on.
- Extension support
- Gamepad drivers, web bluetooth, webserial, midi support
What am I missing? Probably lots of stuff. I have no idea how much each of these components contributes to browser bloat. But all up? Its a lot. Chrome is bigger than most complete operating systems from a decade or two ago. Browser vendors have to pick between fast, simple and fully featured. Chrome sacrifices simplicity every time.