# Genode Web-Browser Demo (1/4)

Welcome to the web-browser demo, showcasing the Arora web browser with a complete networking stack running natively on a microkernel. Beware, it is a tech demo and may be rough around the edges. But we hope you will recognise the potential that lies in the combination of existing software with Genode's concepts.

The demo consists of three parts. The first two parts do not rely on a network connection. All data comes from the Live-CD. So if your network connection does not work, you are still able to test drive the first two experiments. The third demo, however, requires an internet connection.

# Why bringing Arora to Genode?

There were two reasons for porting Arora to the Genode Framework. First, because today's web browsers, including Arora, are extremely complex, porting such a huge software stack to a custom operating system is a great challenge. Arora has become one of our most advanced workloads, stressing the base system, the dynamic linker, the TCP/IP stack, and device drivers. We chose Arora among the available web browsers because we already had Qt running on Genode. Porting Arora seemed an evolutionary step, which actually turned out to be the case.

But in addition to the technical challenge, we quickly recognised the potential that lies beyond the plain porting work. Inspired by recent developments of sandboxing techniques for browser plugins as introduced by Google Chrome, we pursued a generalization of these ideas. What we found was, that the recursive structure of Genode and its capability-based security are able to vastly improve the isolation of browser plugins while, at the same time, making the plugins more flexible.

Continue: Run a complete Genode subsystem as browser plugin