The published package weighs ~17 MB, primarily due to duplicated bundle formats (7.5 MB ESM + 7.5 MB UMD) and embedded WASM binaries. For projects that only need a subset of functionality (e.g., transaction
building, address derivation), the full package is a significant dependency cost.
Suggestions:
- Ship only one bundle format (ESM) and let consumers handle CJS if needed
- Split into sub-packages (e.g., @radixdlt/radix-engine-toolkit-core for just transaction compilation)
- Lazy-load WASM only when needed rather than bundling it upfront
- Tree-shaking improvements so unused modules don't get pulled in
The published package weighs ~17 MB, primarily due to duplicated bundle formats (7.5 MB ESM + 7.5 MB UMD) and embedded WASM binaries. For projects that only need a subset of functionality (e.g., transaction
building, address derivation), the full package is a significant dependency cost.
Suggestions: