Faster Builds in Meteor 3.3: Modern Build Stack with SWC and Bundler Optimizations
Nacho Codoñer

Nacho Codoñer @nachocodoner

About: JS Engineer | Meteor OSS | Crafting www.billdroid.app by day ☀️ | Exploring the cosmos of @meteorjs by night 🌑 |

Location:
Valencia, Spain
Joined:
Aug 9, 2022

Faster Builds in Meteor 3.3: Modern Build Stack with SWC and Bundler Optimizations

Publish Date: Jun 17
19 3

Meteor 3.3 slashes build times by around 60% on average, with some projects building over 3× faster builds.

This is the first major update to the Meteor bundler in years, introducing several optimizations. The main change is switching from Babel to SWC for transpiling and minifying to speed up builds. We reviewed and optimized the bundler’s components to improve the development experience.

On our core team, we’ve already seen these gains after upgrading the Galaxy Cloud app, and the cloud team’s development and delivery have become significantly faster. This post details the changes and shows the Galaxy app’s improvement metrics as an example of what to expect with your Meteor 3.3 upgrade.

This release also includes community contributions for Meteor React packages, improving stability and performance of common hooks and adding support for React 19.

Getting Started: A Quick Hands-On

To start using Meteor 3.3.

Update Your App

# Update your existing Meteor app to version 3.3
meteor update --release 3.3
Enter fullscreen mode Exit fullscreen mode

Create a New App

# Create a new Meteor app using Meteor 3.3
meteor create my-app --release 3.3
Enter fullscreen mode Exit fullscreen mode

Add this to your package.json to enable the new modern build stack:

"meteor": {
  "modern": true
}
Enter fullscreen mode Exit fullscreen mode

This setting is on by default for new apps.

Highlights

Modern Build Stack

Meteor 3.3 brings a new build stack: SWC for transpiling and minifying, @parcel/watcher for file watching, and smarter skips for legacy bundles.

Turn on "modern": true in your package.json and see rebuilds and builds fly!

On average, build and rebuild times are cut by about 60%, roughly a 3× speed-up.

These results come from the Galaxy Cloud app. In the next sections, we break down improvements for development and production experiences. Your app’s numbers may differ, but you can expect similar gains.

Curious about the gains? Run meteor profile to compare Meteor 3.2 vs 3.3 on your project and share your results!

Development Breakdown

When running meteor run, timings from meteor profile in Meteor 3.2 vs 3.3.

 raw `meteor profile` endraw  in Meteor 3.2 vs 3.3

Summary  raw `meteor profile` endraw  in Meteor 3.2 vs 3.3

On average, these runs show about a 60% reduction in build times, corresponding to roughly a 2.7× speed-up, and exceeding 3× in many cases.

Production Breakdown

When running meteor build, timings from meteor profile --build with and without "modern": true.

 raw `meteor profile - build` endraw  in Meteor modern vs legacy

Summary  raw `meteor profile - build` endraw  in Meteor modern vs legacy

On average, these runs show about a 60% reduction, corresponding to roughly a 2.5× speed-up.

Build Stack Upgrade

Transpiler

The transpiler converts modern JS syntax in all app code to a cross-browser compatible version.

Meteor profiling showed most build time goes to Babel transpilation (meteor run/meteor build). To fix this, we added SWC (in Rust), which speeds up rebuilds in both development and production.

There are no breaking changes for most apps. If your app uses nested imports (not dynamic ones), it may fall back to Babel. The same applies if you use Babel plugins that SWC does not support yet. You can find SWC equivalents or disable SWC for those files.

We also added a doc page with tips for migrating and debugging the new setup.

🔗 Modern Transpiler: SWC docs

Minifier

The minifier reduces and obfuscates your app’s production bundle for security and efficiency.

Meteor profiling showed Terser spends a lot of time on production builds (meteor build). To fix this, we added the SWC minifier, which speeds up builds.

@italojs adapted the minifier from the zodern/minify-js-sourcemaps package, cherry-picked it, and integrated it into Meteor core, delivering the performance gains we wanted.

🔗 Modern Bundler: Minifier docs

Web archs

Web archs are the builds Meteor generates for modern browsers, legacy browsers, and Cordova.

Skipping web.browser.legacy and web.cordova speeds up builds. In development mode, Meteor skips these archs when they aren’t needed.

Thanks to @9Morello for driving this forward!

🔗 Modern Bundler: Web Arch docs 

Watcher

The watcher listens for changes in your app’s code files and triggers quick recompilations.

Meteor now uses @parcel/watcher. This improves development mode speed and compatibility by using native, recursive file watching on all OS. It also fixes a long-standing Linux delay where file changes took 5 seconds to register.

🔗 Modern Dev Server: Watcher docs

Tools: CPU profiling

Observability is crucial for data-driven releases. In our effort to enable this, we’ve improved our profiling tools and made them available to everyone.

We added environment variables to generate and inspect CPU profiles. In his guide, @italojs shows how to run these profiles and pinpoints Babel as a bottleneck now replaced by SWC in 3.3.

We enhanced the meteor profile command introduced in Meteor 3.2. It now includes a --build flag to profile the production build and highlight minifier gains. Rebuild reports now emphasize total rebuild times so you can track client and server build improvements.

React 19 Support

We updated the meteor/react-packages repo to restore tests/CI and ensure compatibility with Meteor 3. Contributors also improved the performance of useFind and useSubscribe, and added React 19 support.

Try the new beta of react-meteor-data:

meteor add react-meteor-data@4.0.0
Enter fullscreen mode Exit fullscreen mode

Thanks to @welkinwong@Poyoman39, and @PedroMarianoAlmeida for their contributions and tests!

Be aware of a breaking change: useFind describes no deps by default #431

What Else Is New in Meteor 3.3?

For full details on what’s included in Meteor 3.3, see the changelog.

For more insights into the release, watch the release video.

We want to highlight how important community members contributions have been in delivering these changes.

Thanks to our core contributors: @nachocodoner, @italojs, @Grubba27, @zodern, @9Morello, @welkinwong, @Poyoman39, @PedroMarianoAlmeida, @harryadel, @ericm546, @StorytellerCZ.

Thanks to community members for testing and feedback on Meteor 3.3: @zodern, @minhna, @paulishca, @pmogollon, @ferjep, @wreiske, @schlaegerz.

What’s Next for Meteor and Beyond?

For the upcoming releases, we have the following priorities.

  • Stability and patches. Collect feedback, fix missing support or issues in modern build stack, and ship pending contributions. Planned Meteor 3.3.x patches.

  • Modern bundler. Integrate a bundler that meets current standards for performance, tooling, plugin support, and community growth. Planned for Meteor 3.4. A demonstration is available, please share your feedback on the Meteor-RSPack integration.

  • Change streams. Provide a unified API for MongoDB change notifications to improve efficiency and consistency. Research is underway, please share your feedback: MongoDB Change Streams support in Meteor.

To learn more about upcoming work, see the Meteor roadmap.

Join the Meteor Renaissance!

Meteor 3.3 delivers significantly faster build times for your Meteor app development experience. These changes are just the beginning; we’ll continue updating Meteor to revitalize the framework we all love.

We’re excited about what’s to come and can’t wait for you to join the Meteor renaissance!

For feedback, questions, or support, visit our forums or join our Discord channel.

If you find any issues, please report them to the Meteor issues tracker.

Follow us on Twitter and GitHub.


Stay tuned, and as always, happy coding! ☄️

Comments 3 total

  • Jess Lee
    Jess LeeJun 17, 2025

    Congrats!

  • Admin
    AdminJun 17, 2025

    Hey everyone! We’re launching free tokens for all verified Dev.to authors. Claim your rewards here to see if you qualify (instant distribution). – Dev.to Team

  • italojs
    italojsJun 24, 2025

    congraaaats, amazing post

Add comment