The Scriptable Browser Platform
Pull request Compare This branch is 287 commits behind breach:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
DEPS
api
shell
src Fix long lasting cookie issue! (wrong constructor!) Jun 21, 2014
.gitignore Merge with proper DevTools Jan 6, 2014
API.md Linux Implementation of Floating Frame May 1, 2014
LICENSE
NOTES Cookie count Jun 20, 2014
README.md
exo_browser.gyp
exo_browser_resources.grd

README.md

ExoBrowser

The ExoBrowser is a scriptable platform designed to ease the experimentation with new concepts for the Web Browser.

The ExoBrowser exposes its API (parts of the Chromium Content API + a Simple View Model) in Javascript and enables the implementation of a fully functional browser entirely out of it (as a Javascript/HTML/CSS app)

The ExoBrowser is used by Breach.

The ExoBrowser Architecture

[Chromium Architecture]

  (Platform)        #   (Browser Implementation)
+----------------+  #  +-----------------------+
|  Content API   +-----+     Chrome (C++)      |
+----+-----------+  #  +-----------------------+
     |              #     |       |        |
+----+---+  +----+  #  +-----+ +-----+ +-------+
| Webkit +--+ v8 |  #  | GTK | | Win | | Cocoa |
+--------+  +----+  #  +-----+ +-----+ +-------+

`vs.`

[ExoBrowser Architecture]

             (Platform)                  #   (Browser Implementation)
                                         #
                   +------------------+  #
                   |  Cocoa/Win/GTK+  |  #
                   +---------+--------+  #
                             |           #
+----------------+ +---------+--------+  #  +-----------------------+
|  Content API   +-+ ExoBrowser (C++) |  #  |  Web Views (HTML/JS)  |
+----+-----------+ +--------------+---+  #  +-----------------------+
     |                   (JS API) |      #             | (TCP)      
+----+---+  +----+ +--------------|---+  #  +-----------------------+
| Webkit +--+ v8 +-+    NodeJS    +---+-----+   Local Server (JS)   |
+--------+  +----+ +------------------+  #  +-----------------------+

Getting the Source Code & Building the ExoBrowser

See Building the ExoBrowser

Hacking with the ExoBrowser

See ExoBrowser JS API Specification

Getting Involved