K30 / scripts /bundle-analysis.json
Raí Santos
oi
98ace4c
{
"timestamp": "2025-11-01T17:18:11.881Z",
"files": [
{
"path": "public/app.js",
"size": 220049,
"sizeFormatted": "214.89 KB",
"lines": 4830,
"characters": 217548,
"gzipEstimate": "64.47 KB"
},
{
"path": "public/styles.css",
"size": 79547,
"sizeFormatted": "77.68 KB",
"lines": 3704,
"characters": 78889,
"gzipEstimate": "23.3 KB"
},
{
"path": "public/index.html",
"size": 40825,
"sizeFormatted": "39.87 KB",
"lines": 808,
"characters": 40459,
"gzipEstimate": "11.96 KB"
},
{
"path": "public/sw.js",
"size": 16666,
"sizeFormatted": "16.28 KB",
"lines": 433,
"characters": 16574,
"gzipEstimate": "4.88 KB"
},
{
"path": "public/manifest.json",
"size": 3814,
"sizeFormatted": "3.72 KB",
"lines": 155,
"characters": 3799,
"gzipEstimate": "1.12 KB"
}
],
"totalSize": 360901,
"totalSizeFormatted": "352.44 KB",
"gzipEstimate": "105.73 KB",
"recommendations": [
{
"priority": "ALTA",
"issue": "Bundle muito grande (>300KB)",
"solution": "Implementar code splitting e lazy loading"
},
{
"priority": "ALTA",
"issue": "app.js muito grande (>150KB)",
"solution": "Dividir em módulos menores e carregar sob demanda"
},
{
"priority": "MÉDIA",
"issue": "styles.css grande (>50KB)",
"solution": "Remover CSS não utilizado com PurgeCSS"
},
{
"priority": "MÉDIA",
"issue": "Sem minificação",
"solution": "Implementar minificação com Terser (JS) e cssnano (CSS)"
},
{
"priority": "ALTA",
"issue": "Sem compressão Gzip/Brotli",
"solution": "Configurar compressão no servidor"
},
{
"priority": "BAIXA",
"issue": "Otimização de imagens",
"solution": "Converter SVGs para WebP quando apropriado"
}
]
}