From 50bd690ddde6a13e596adeee831ac04edf4c8262 Mon Sep 17 00:00:00 2001 From: Georgios Andreadis Date: Tue, 4 Apr 2017 09:54:06 +0200 Subject: Add component diagram explanation to README --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 1531b46e..417173e6 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,16 @@ The main application allows the user to construct and simulate a datacenter. To ### Components Under the hood, this looks as follows: -[TODO] +![OpenDC Frontend Component Diagram](https://raw.githubusercontent.com/atlarge-research/opendc-frontend/master/images/opendc-frontend-component-diagram.png) + +#### Entry Scripts +The entry scripts are the first entities triggered on page load of the respective pages. They are responsible for instantiating the corresponding view and controller. + +#### Controllers +In the main web-application, the controllers handle user input and state. They also initiate re-renders of views when a part of their managed state changes. There are different classes of controllers; some concerning themselves with the API connection, others with the different modes of interaction, and others with simulation-specific actions. This all is orchestrated by a central class called the `MapController`. + +#### Views +The views are responsible for drawing content to the canvas. They are split up into different layers, corresponding to the way they are rendered. ## Setup for Local Development -- cgit v1.2.3