BrianRuizy / covid19-dashboard

🦠 Django + Plotly Coronavirus dashboard. Powerful data driven Python web-app, with an awesome UI. Contributions welcomed! Featured on 🕶Awesome-list
https://covid-dashboard.herokuapp.com
MIT License
213 stars 178 forks source link

SEO Issue: Page Speed Analysis (Desktop) - The page loads in 7.5 seconds #85

Closed DarWik closed 3 years ago

DarWik commented 3 years ago

Issue founded on: https://seorch.eu/

Date: 19. January 2021 Website: http://ncov-dashboard.herokuapp.com/ User Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36 Permalink: https://seorch.eu/seo-check/ncov-dashboard-herokuapp-com-2021-01-19-09-77-26.html

Page Speed Analysis (Desktop)

The page loads in 7.5 seconds

Details: image

image

Solutions:

Reduce JavaScript execution time

Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/js/fetch-data.js https://cdnjs.cloudflare.com/ajax/libs/plotly.js/1.54.6/plotly.min.js http://ncov-dashboard.herokuapp.com/ Unattributable http://ncov-dashboard.herokuapp.com/static/assets/js/plugins/jquery/dist/jquery.min.js

Enable text compression

Text-based resources should be served with compression (gzip, deflate or brotli) to minimize total network bytes.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/css/style.css?v=1.1.0 http://ncov-dashboard.herokuapp.com/daily_report http://ncov-dashboard.herokuapp.com/static/assets/js/plugins/jquery/dist/jquery.min.js http://ncov-dashboard.herokuapp.com/static/assets/js/plugins/bootstrap/dist/js/bootstrap.bundle.min.js http://ncov-dashboard.herokuapp.com/cases http://ncov-dashboard.herokuapp.com/realtime_growth http://ncov-dashboard.herokuapp.com/static/assets/js/sorttable.js http://ncov-dashboard.herokuapp.com/ http://ncov-dashboard.herokuapp.com/daily_growth http://ncov-dashboard.herokuapp.com/static/assets/js/fetch-data.js http://ncov-dashboard.herokuapp.com/static/assets/js/argon-dashboard.min.js?v=1.1.0

Minify CSS

Minifying CSS files can reduce network payload sizes.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/css/style.css?v=1.1.0

Serve images in next-gen formats

Image formats like JPEG 2000, JPEG XR, and WebP often provide better compression than PNG or JPEG, which means faster downloads and less data consumption.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/img/brand/white.png http://ncov-dashboard.herokuapp.com/static/assets/img/brand/blue.png

Remove unused JavaScript

Remove unused JavaScript to reduce bytes consumed by network activity.

Affected files and functions: https://cdnjs.cloudflare.com/ajax/libs/plotly.js/1.54.6/plotly.min.js http://ncov-dashboard.herokuapp.com/static/assets/js/plugins/bootstrap/dist/js/bootstrap.bundle.min.js http://ncov-dashboard.herokuapp.com/static/assets/js/plugins/jquery/dist/jquery.min.js

Remove unused CSS

Remove dead rules from stylesheets and defer the loading of CSS not used for above-the-fold content to reduce unnecessary bytes consumed by network activity.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/css/style.css?v=1.1.0 /! Font Awesome Free 5.15.2 by @fontawesome - https://fontawesome.com * License - https://fonta...

Defer offscreen images

Consider lazy-loading offscreen and hidden images after all critical resources have finished loading to lower time to interactive.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/img/brand/white.png

Properly size images

Serve images that are appropriately-sized to save cellular data and improve load time.

Affected files and functions: http://ncov-dashboard.herokuapp.com/static/assets/img/brand/blue.png

Cumulative Layout Shift

Cumulative Layout Shift measures the movement of visible elements within the viewport.

Affected files and functions: 1.

Minimize main-thread work

Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this.

Affected files and functions: Script Evaluation Parse HTML & CSS Style & Layout Garbage Collection Rendering Script Parsing & Compilation

Reduce initial server response time

Keep the server response time for the main document short because all other requests depend on it.

Affected files and functions: http://ncov-dashboard.herokuapp.com/

Reduce the impact of third-party code

Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading.