We've got big plans for Turbopack. Here's what we're aiming for in the future:
Right now, Turbopack is being used as an opt-in feature in Next.js's dev server. This is helping to create an extremely fast experience in local development that scales to big projects.
Next, we want to use Turbopack to power production builds with Next.js. We think that this will result in a big boost in performance, especially when integrated with remote caching.
We're planning to build a first-class integration with Svelte to let Turbopack power the next generation of SvelteKit applications.
We are in active discussions with other frameworks to bring Turbopack to their users. We're excited to see what we can build together!
Turbopack is built from the ground up to take advantage of caching. Currently, this cache is stored in-memory only. This lets us optimize for our current use case - making the Next.js dev server fast.
In the future, we plan to persist this cache to the file system, to speed up Turbopack between runs. This will work similarly to Turborepo's cache - but at a much more granular level. Turborepo can currently only cache the results of entire builds. Turbopack, however, can cache the results of individual functions within those builds - saving much more time over subsequent runs.
Once persisting to the file system is working, we can build the next logical step: persisting to a remote cache. With Turborepo, we've already built remote caching on Vercel. In the future, you'll be able to share Turbopack's hyper-granular cache across your whole team, using the Vercel Remote Cache.
To learn more about our future plans for Webpack integration, check out our Migrating from Webpack page.
We are currently migrating/rewriting Turborepo in Rust. In the future, Turborepo and Turbopack will merge into a single toolchain--Turbo--that can be used as either a bundler or a build system or both.