Skip to content

Instantly share code, notes, and snippets.

@mraible
Last active June 7, 2023 08:06
Show Gist options
  • Save mraible/49207e1264fa46bfa76d767021c2fde9 to your computer and use it in GitHub Desktop.
Save mraible/49207e1264fa46bfa76d767021c2fde9 to your computer and use it in GitHub Desktop.
Angular App Size

Angular 8:

  • ES5: 62 + 683 + 6.2 + 176 + 8500
  • ES2015: 50 + 264 + 6.2 + 174 + 7100

With AOT:

  • ES5: 781 + 123 + 1.5 = 905.5
  • ES2015: 664 + 36 + 1.5 = 701.5

Angular 9:

  • ES5: 77 + 647 + 6.2 + 178 + 6200
  • ES2015: 66 + 140 + 6.2 + 177 + 5200

With AOT:

  • ES5: 768 + 127 + 1.5
  • ES2015: 655 + 36 + 1.5

Totals

  • Angular 8: 7.6, 9.4
  • Angular 8 + AOT: 702, 906
  • Angular 9: 5.6, 7.1
  • Angular 9 + AOT: 693, 897

Graph on JSFiddle

google.charts.load('current', {packages: ['corechart', 'bar']});
google.charts.setOnLoadCallback(drawMultSeries);

function drawMultSeries() {
  var data = google.visualization.arrayToDataTable([
    ['Apps', 'Angular 8', 'Angular 8 + AOT', 'Angular 9 + Ivy', 'Angular 9 + AOT'],
    ['Legacy Browsers (ES5)', 9.4, 0.906, 7.1, 0.897],
    ['Modern Browsers (ES2015)', 7.6, 0.702, 5.6, 0.693]
  ]);

  var options = {
    title: 'Angular Application Size',
    chartArea: {width: '50%'},
    hAxis: {
      title: 'Size in Megabytes',
      minValue: 0
    },
    vAxis: {
      title: 'Generated Bundles'
    }
  };

  var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
  chart.draw(data, options);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment