/dashboard
JavaScript shipped to the browser but never executed wastes bandwidth and parse time.
Unused JavaScript still costs network bandwidth, parse time, and CPU. The browser must download, parse, and compile every byte you ship — even if it never executes.
// Lazy-load route-specific JS
const Dashboard = () => import('./Dashboard.js');
// Or use @vite directive in Blade
@vite(['resources/js/app.js'])
<!-- Loading the entire bundle on every page -->
<script src="/build/everything.js"></script>
<script src="/build/assets/app-abc.js"></script>
main > section.hero > img
<img src="/images/hero.jpg" loading="eager">
|
Type
|
Count
|
Size
|
|---|---|---|
| script | 14 | 460 KB |
| stylesheet | 4 | 173 KB |
| image | 22 | 674 KB |
| font | 1 | 76 KB |
| document | 1 | 10 KB |
|
Entity
|
Transfer
|
Blocking
|
Main thread
|
|---|---|---|---|
| Google Analytics | 23 KB | 60ms | 100ms |
|
URL
|
Type
|
Size
|
Duration
|
|---|---|---|---|
vendor.js
|
371 KB | ||
products
|
24 KB |
app.js
508ms
vendor.js
165ms