Overview (note, still WIP)
The ONOS GUI is a single-page web-application with hash-navigation. The GUI system comprises client-side code (a single HTML page, javascript libraries and modules, CSS files, etc.) and server-side code (Java classes that interface to ONOS Server APIs).
Client-Side Architecture
<details of framework, views, navigation, etc.>
Topology view
<details of websocket communication with the server>
Server-Side Architecture
<details of web-socket handling, JSON event protocol, etc.>