title: Best Dashboard Architecture
body: <p>I need to build a dashboard for an application, the dashboard will have different dashlets and each dashlet can have any one of the following things:</p>
  
  <ol>
  <li>Graphs (JFreeCharts and some Javascript Chart)</li>
  <li>Table data from tables </li>
  <li>Data from external sources </li>
  <li>Maps</li>
  </ol>
  
  <p>What can be a good architecture for such kind of application? </p>
  
  <p>What I have currently in mind is:</p>
  
  <ol>
  <li>Each dashlet should have its own lifecycle and when the dashboard loads it should just show the UI of the dashlets initially. </li>
  <li>After the page load each dashlet sends a server call (based on its type) to fetch its data</li>
  <li>After the data has been fetched, each dashlet (based on its type) renders the data. </li>
  </ol>