A WebRTC browser for iOS developed in the open. Bowser is built on top of OpenWebRTC.
Bowser is not only Open Source, it is also available as a free download on the Apple App Store. When improvements have been made to Bowser or OpenWebRTC new versions for the App Store are published by Ericsson Research.
Developing for Bowser
Tips and other resources can be found on the wiki page Developing for Bowser.
Extension of UIWebView
Bowser is based on the official
The plan is to move to the
WKWebView, introduced in iOS 8, as soon as possible.
Mobile Safari on iPhone displays
<video> elements only in fullscreen. This severely limits the UI of your apps, especially when designing video communication apps using WebRTC. Bowser goes beyond that and allows you to fully customise and manipulate
To build Bowser you need a completed build of OpenWebRTC, Xcode and the iOS SDK. The build itself is pretty simple as we have set up the header/library search paths to expect that you cloned Bowser alongside OpenWebRTC. As long as you have:
...then you shouldn't have any problems with just opening the Xcode project and building.
Debugging WebRTC scripts
As Bowser is using the official
UIWebView that is provided by the iOS platform you can use Apple's Web Developer Tools to debug your WebRTC scripts. It is also possible to use Safari on OS X to debug Bowser. The details are described in this blog post.
Bowser was originally developed by Ericsson Research and released in October of 2012, for both iOS and Android devices. Back then Bowser was the world's first WebRTC-enabled browser for mobile devices. Bowser was later removed from the Apple App Store and Google Play but was resurrected and released as Open Source together with OpenWebRTC.
Bowser is released under BSD-2 clause. See LICENSE for details.