Parcel: Add comparsion to fuse-box

Created on 5 Dec 2017  路  10Comments  路  Source: parcel-bundler/parcel

There is no much competition in bundlers world (yet?), but there IS actually something other than browserify and webpack - fuse-box that claims to be "blazing fast" too.

So any speed comparsion in README would be great, so we can have heathly competition here :)

Most helpful comment

@devongovett "initial" bundling is for production builds, but we are talking about productivity (development) here, where milliseconds matter. 2 seconds HMR is unacceptable for FuseBox

All 10 comments

Yep, I would like to see the actual benchmark. FuseBox is able to re-bundle a 4.5mb bundle in ~150ms with cache. With an average project that's a 50ms build time. It would be fair to see the actual results.

important to note the difference between re-bundling vs initial bundling. rebundling is relatively easy to get fast since usually just a single file changes at a time. initial bundling is what parcel focuses on. it is done by using multicore processing, which is something I haven't seen from other bundlers.

but yes, fuse-box would be a good comparison as well.

@devongovett "initial" bundling is for production builds, but we are talking about productivity (development) here, where milliseconds matter. 2 seconds HMR is unacceptable for FuseBox

Yes. My current webpack rebuilding a single file change takes 4.5s and in FuseBox takes 0.5s so that matters a lot for developer productivity.

Let's focus on making Parcel solid before we start on this stuff. Saying Parcel is much faster than Webpack/Browserify is interesting, saying it's in the same ballpark as fuse-box is not. At that point you start comparing on other features.

I'm gonna close this as something to come back to later, let's see how things go.

hi :-)

Where is the benchmark repo for browserify/webpack/parcel tests, only saw results on main page?

  • browserify | 22.98s
  • webpack | 20.71s
  • parcel | 9.98s
  • parcel - with cache 2.64

This way browserify/webpack can tell if its incorrect usage of they tools causing the slow results.
And maybe someone else could add fusebox/other bundlers to the test repo if they have time.

For whoever else is interested in HMR for typescript + HTML: I tried parcel and getting ~30ms HMR when re-bundling typescript on "hello world" project in VS.

Initially I was confused with @jamiebuilds's decision, but I agree now it's better to make the Parcel better since it seems to perform quickly for HMR.
Haven't tested with bigger project since this is my first Parcel. :)

index.ts:

console.log("hello world");

index.html:

<html>
<body>
    <h1>hello worlsd</h1>
    <script src="./index.ts"></script>
</body>
</html>

then

parcel index.html

Well, "Hello World" app can't be really counted as a proof that a bundler is fast :) Every single one probably will get that ~30ms with empty/Hello World app.

For anyone searching for benchamarks I found this https://github.com/TheLarkInn/bundler-performance-benchmark.

@carloslfu These benchmark are outdated and give an incorrect vision of which one is faster or better as the apps are basically hello world examples.

You could also check out this repo as it compares webpack and parcel on react-hn (a branch we used for some performance tests in the past as it seems to be a fairly big project) https://github.com/DeMoorJasper/react-hn

Was this page helpful?
0 / 5 - 0 ratings