Feature Discussion: Reduce native bundle size for small apps
Summary
On Linux, even a minimal "Hello World" app produces a 121 MB executable.
This issue is scoped to the Linux build only; other platforms may differ.
Reproduction
A minimal app.tsx that only renders centered Hello World text:
import { render } from '@gpuix/react'
function HelloApp() {
return (
<div style={{ width: '100%', height: '100%', display: 'flex', alignItems: 'center', justifyContent: 'center' }}>
<text>Hello World</text>
</div>
)
}
render(<HelloApp />, { title: 'Hello World', width: 400, height: 300 })
Build:
Result on Linux:
-rwxr-xrxy 1 my my 121M dist/hello
ELF 64-bit LSB executable, x86_64, dynamically linked,
interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0,
not stripped
Linux baselines
| Build |
Size |
| Empty Bun standalone |
78 MB |
| GPUIX Hello World |
121 MB |
| GPUIX delta over plain Bun |
+43 MB |
| Compressed tarball |
50 MB (59% compression) |
Feature Discussion: Reduce native bundle size for small apps
Summary
On Linux, even a minimal "Hello World" app produces a 121 MB executable.
This issue is scoped to the Linux build only; other platforms may differ.
Reproduction
A minimal
app.tsxthat only renders centeredHello Worldtext:Build:
Result on Linux:
Linux baselines
59%compression)