microbundle icon indicating copy to clipboard operation
microbundle copied to clipboard

Option to use a faster transpile/bundle engine?

Open quantizor opened this issue 3 years ago • 3 comments

esbuild and swc come to mind, being able to sidestep TSC for build speed would be amazing.

https://www.npmjs.com/package/rollup-plugin-swc https://www.npmjs.com/package/rollup-plugin-esbuild

quantizor avatar Mar 31 '22 22:03 quantizor

This would be nice, though both of those options would dramatically increase the on-disk size of Microbundle. Perhaps we could move to ESBuild at the same time as we ship a precompiled version of Microbundle, so the package would be a single 1mb JS file and a ~10mb esbuild dep for the given platform.

developit avatar Jun 06 '22 02:06 developit

@developit yeah that would definitely work!

quantizor avatar Jun 09 '22 15:06 quantizor

Hey @probablyup how are you!!

I don't know much about SWC except as a happy end user, but I just opened #975 as a PoC - a way to effectively make @swc/core an optional peer dependency. All it adds is a single rollup plugin as a dependency, and only "activates" it when the end user has @swc/core installed.

I thought this might be an easier to incrementally adopt, lighter weight approach than shipping a whole different precompiled version of Microbundle. Also it'd be opt in, so people who are reliant on the current babel-based version of this library can keep using it until swc+microbundle has full feature parity. Some more details in the PR, @developit would be great to get your thoughts, I'd love to see something like this in microbundle!

mmkal avatar Jul 17 '22 20:07 mmkal