adzm 14 hours ago

No more babel in my compilation pipeline, yay!

  • adzm 12 hours ago

    Update: changed a pet project to use this instead of the babel approach. Literally just did the config changes in the article, no issues. Time from `npm run dev` to ready went from 6 to 2 seconds.

  • Waterluvian 12 hours ago

    It’s just the best thing ever. Compiling at work took a minute for full builds with babel, and with rsbuild it now takes about 0.9 seconds.

    • fishfasell 5 hours ago

      Rust is such an awesome language. The execution times are blazing fast.

  • koito17 7 hours ago

    Finally got rid of Webpack in 2022, and now I'll be able to get rid of Babel, too.

    It's a bit mesmerizing to think that Vite at the time was still "that newish tool the Vue folk use", and now it's pretty much the standard bundler for web frontend. Also the easiest one to configure and use (in my experience).

    Similarly, I'm glad I don't have to deal with karma, jest, etc. anymore.

vmsp 11 hours ago

OXC Transformers are amazingly faster than Babel. I'm building a framework (https://github.com/vmsp/flypath) for web, iOS and Android native development that's fully backed by OXC and Vite. Instead of transforming styles using Babel like StyleX, I just use OXC. Instead of Metro (React Native's bundler), which also uses Babel, it's just Vite. It's still very early but it's plenty, plenty fast.

  • nwienert 9 hours ago

    Cool stuff. I'm moving One[stack.dev] onto pure rust now, and Tamagui v3 compiler will also is moving from Babel to Yuku which is quite interesting - from my testing it's more flexible and quite a bit faster than OXC.

syspec 14 hours ago

Does this work with reacts fancy new compiler that is meant to optimize away various hooks?

  • ownagefool 14 hours ago

    If it wasn't obvious from the article, this is an implementation in the same thing in rust, ergo significantly faster. This was enabled, I presume, by the upstream react introducing code a rust version in source ( but they don't produce a standard binary last I checked )

shikck200 4 hours ago

Webdev is the pinnacle of over engineering. And now with AI, it will get even worse. I think the web truly needs a reset.

  • satvikpendem 3 hours ago

    Improving speed is now overengineering apparently, but the same people would complain about how horrible web dev is if it weren't improved. Damned if you do, damned if you don't.

  • onion2k 3 hours ago

    Webdev is the pinnacle of over engineering.

    Imagine you wanted to make a native desktop app that runs on Windows (going back to Windows 95), and OSX, and Linux, and have it use the end users choice of native components, QT, or GTK. It also has to load fast, be accessible, and work on desktop, laptop, and phones. Also, you're only allowed to ship a single binary but you can load in assets based on the device when it runs.

    The app could be anything from a single page that renders one image up to a complete 3D game. Users want 60FPS regardless of what it is.

    I reckon you'd end up with a relatively complicated build pipeline.

    That's what webdev is today.

    • shikck200 2 hours ago

      Thats not a true comparison, MAYBE that was sort of a thing back in the IE6 era. Today the web is capable of "a good enough" UX for most things. But how we do interactive apps on the web today is just madness. Most sites dont need anything close to React, and those who do could have just used something more simple without the madness what is the react ecosystem / bundlers / packages etc.

      • onion2k 1 hour ago

        The best non-web analogy I can think of is when someone builds a 2D platformer in Unreal Engine. The complexity of the tooling is necessary because someone else is making Witcher 4 in it. The fact the 2D platformer is using a vastly more complicated tool than necessary is on the dev, not the tool.

        It's not React's fault that some devs don't know how to make a form in HTML. There is an argument that React doesn't spend much time telling people they might not need it, but that's not really their responsibility, plus there are some things (reactivity to other things on the page) that are common enough that seeing the boundary where you do or don't need it is actually quite hard.

  • yugoslavia4ever 3 hours ago

    There's lots of overengineered bollocks in webdev, but this is not one of those pieces.

Onavo 12 hours ago

Why does the Nextjs version of React compiler require a babel plugin when the vite version doesn't need it? Next.js is on SWC, not sure why they need a babel plugin.

  • crypto137 11 hours ago

    Because next is the worsttttt