Vite just solved its biggest architectural debt. 🔥 Since its inception, Vite ran two separate bundlers — esbuild for dev, Rollup for production. It worked, but it meant two plugin systems, subtle inconsistencies, and the classic "works in dev, breaks in prod" headache. Vite 8 replaces both with Rolldown — a single Rust-based bundler powering everything. The results are staggering: ⚡ Linear: 46s → 6s production builds ⚡ Beehiiv: 64% build time reduction ⚡ Ramp: 57% faster ⚡ Mercedes-Benz.io: up to 38% reduction But speed isn't even the real story. The real win? One bundler = one plugin API, one transformation pipeline, zero dev/prod drift. Most existing plugins work without changes. Vite 8 also marks the arrival of a fully integrated stack: Vite + Rolldown + Oxc. Parsing, bundling, minification — all tightly coordinated. The new plugin-react v6 already dropped Babel entirely thanks to Oxc. Other goodies I'm excited about: → Native tsconfig paths support (goodbye alias plugins) → Built-in devtools → Browser console forwarding to terminal (huge for AI coding agents) → Built-in emitDecoratorMetadata support 🙌 I wrote a deep dive covering the architecture shift, migration path, and what's coming next. Link in the comments 👇 #Vite #Rolldown #JavaScript #TypeScript #WebDevelopment #FrontendEngineering #DeveloperTools #Rust #Performance #OpenSource
Tomas Listiak’s Post
More Relevant Posts
-
FrameworkX introduces Dynamic Module Hot-Reloading, a significant advancement in development efficiency. This capability operates by establishing a persistent WebSocket connection between the development server and the client application. Upon detection of a module file modification within the project directory, the server does not initiate a full recompilation of the entire bundle. Instead, it precisely identifies the changed module and its dependent graph. A specialised hot-update manifest is generated, containing only the updated module's new code and a checksum. This manifest is then pushed to the client via the WebSocket, where the client-side runtime intelligently replaces the old module definition with the new one in the module cache, without triggering a full page refresh or losing application state. This process leverages Abstract Syntax Tree (AST) analysis to maintain application integrity during the update. The immediate benefit for development cycles is a substantial reduction in feedback loop latency. Developers can iterate on features and bug fixes with near-instantaneous visual updates, preserving intricate application state that would otherwise be lost on a full reload. This fosters a more fluid and less disruptive coding experience, leading to improved concentration and accelerated development velocity, particularly for complex UI components and state-driven applications. #WebDevelopment #DeveloperTools #SoftwareEngineering #FrontendDev #JavaScript
To view or add a comment, sign in
-
-
Dev tools shouldn’t come with strings attached. 🛠️ I’m tired of "free" tools that are actually riddled with ads, tracking cookies, and "pro" subscriptions. So, I decided to build a cleaner alternative: DevEditor.io. It is currently live as a high-performance JSON Editor, built on a philosophy of pure utility: ✅ No Ads. ✅ No Subscriptions. ✅ No Tracking. ✅ Just Free to use. How you can help: 1️⃣ Try it out: If you work with JSON, give it a spin. 2️⃣ Suggest a feature: What is your biggest pain point with current editors? I’m building this for us, so your feedback shapes the roadmap. 3️⃣ Share the word: If you find it useful, please share it with your team or anyone who needs a distraction-free workspace. Check it out here: 👉 https://www.deveditor.io/ #JSON #OpenSource #DevTools #Programming #SoftwareEngineering #NoAds #WebDev #BuildInPublic
To view or add a comment, sign in
-
Edit-State Reliability in Dynamic UI Components Worked on a fix for an issue where a saved value was not being shown correctly when reopening an edit modal across multiple line-item flows. The problem came from how the autocomplete field restored its initial value. It was trying to match only on the saved display text, which worked in some cases but failed when the returned option label format was different from the stored value. As a result, the data existed, but the field looked empty in the UI. To fix this, I updated the initialization logic so the autocomplete now restores the selected value by matching on a stable ID first, and only falls back to the display text if needed. I moved that logic into a shared helper and applied it across all affected directive paths to keep the behavior consistent. This change improved edit-state reliability and made the modal behave correctly across multiple transaction types. A solid example of how many UI bugs are really about making sure saved state maps back correctly to dynamically loaded component data. #SoftwareEngineering #Frontend #JavaScript #Debugging #EnterpriseSoftware #WebDevelopment #GitHub
To view or add a comment, sign in
-
-
Thoughts on Vite 8. 🧠 For years, Vite lived a "double life": esbuild for lightning-fast dev starts and Rollup for production builds. It worked, but keeping those two pipelines in sync meant constant edge cases and "works on my machine" bugs. Vite 8 replaces both with Rolldown. A single, Rust-based bundler that handles the entire lifecycle. Here’s why this changes everything: 🚀 10–30x Faster Builds: Real-world testing is showing massive gains. Linear went from 46s to 6s in production. Ramp saw a 57% reduction. 🔄 True Dev/Prod Parity: One plugin system. No more "works in dev but breaks in prod" surprises. Since Rolldown uses the same API as Rollup, most existing plugins work out of the box. 🛠️ Built-in Devtools: You can now enable Vite Devtools for deep debugging and performance analysis directly from the dev server. 📟 Browser Console Forwarding: This is the sleeper hit 👏 Runtime errors from the browser now stream directly to your terminal. (Bonus: If you use AI coding agents, they can finally "see" client-side errors without manual copy-pasting). ⚛️ React Evolution: @vitejs/plugin-react v6 has officially dropped Babel. It now uses Oxc for transforms, leading to smaller installs and faster compilation. The best part? They built a compatibility layer that auto-converts your existing esbuild and rollupOptions to Rolldown equivalents. Most projects can upgrade without touching a single line of config. Vite isn't just a build tool anymore; it’s becoming a high-performance engine for the entire web. #Vite #SoftwareEngineering #TechTrends #OpenSource #Coding
To view or add a comment, sign in
-
-
This one naming convention makes a bigger difference than most developers expect. Resource-first permissions (document:create vs create:document) means your IDE can actually work with you. Type document: and autocomplete shows everything tied to that resource instantly. Small decisions like this compound fast, especially as your codebase grows. This clip is from our Permission Systems that Scale course. What conventions does your team follow? Drop them below. 👇 #webdev #typescript #cleancode #softwareengineering #developertools
To view or add a comment, sign in
-
𝐁𝐮𝐢𝐥𝐝𝐢𝐧𝐠 𝐚 𝐅𝐢𝐥𝐞 𝐒𝐡𝐚𝐫𝐢𝐧𝐠 𝐖𝐞𝐛 𝐀𝐩𝐩 – 𝐅𝐞𝐚𝐭𝐮𝐫𝐞 2: 𝐅𝐢𝐥𝐞 𝐔𝐩𝐥𝐨𝐚𝐝 One of the 𝐟𝐢𝐫𝐬𝐭 𝐜𝐨𝐫𝐞 𝐟𝐞𝐚𝐭𝐮𝐫𝐞𝐬 I implemented in 𝐦𝐲 𝐅𝐢𝐥𝐞 𝐒𝐡𝐚𝐫𝐢𝐧𝐠 𝐖𝐞𝐛 𝐀𝐩𝐩 was a simple and efficient file upload system. The goal was to make 𝐮𝐩𝐥𝐨𝐚𝐝𝐢𝐧𝐠 𝐟𝐢𝐥𝐞𝐬 𝐪𝐮𝐢𝐜𝐤, 𝐢𝐧𝐭𝐮𝐢𝐭𝐢𝐯𝐞, 𝐚𝐧𝐝 𝐫𝐞𝐥𝐢𝐚𝐛𝐥𝐞 so users can store their files without any friction. Users can easily select files from their 𝐝𝐞𝐯𝐢𝐜𝐞 𝐚𝐧𝐝 𝐮𝐩𝐥𝐨𝐚𝐝 𝐭𝐡𝐞𝐦 to the platform in just a few clicks. Behind the scenes, the system handles file processing, storage management, and ensures that every file is uploaded securely. While implementing this feature, I focused on a few important aspects: • Clean and intuitive upload interface so users can quickly understand how to upload files • Fast upload experience to reduce waiting time for users • Proper backend handling to process and store files efficiently • Secure file storage so uploaded files remain protected and accessible only to authorized users This feature forms the foundation of the entire application, because every other functionality like file management, sharing, and storage tracking depends on it. #WebDevelopment #FullStackDeveloper #ReactJS #BuildInPublic
To view or add a comment, sign in
-
I am definitely a #dev who values pragmatism over chasing the "next shiny thing", so I don't usually hype up every new package that drops. However, our community often faces common problems, and sometimes, someone is not ignoring all the feedback received. I really think this is the case of Caleb Porzio 's framework, known as #Livewire, which just had a new related release that caught my attention: #Blaze. If you've ever built component-rich UIs in Livewire, you know what's the struggle: rendering can eventually take a toll on your server response time. Well, Livewire's team seems to have just released the problem-solver component: Blaze is a drop-in compiler that turns those #Blade templates into highly optimized PHP functions, claiming to cut rendering overhead by up to 97% (!!!). Setup is basically a composer require, and it allows you to optimize single components with a @blaze directive, or to target whole directories at once. I’ve been using #Filament recently to build admin panels, mixing it with some custom Livewire pages with custom blade components. I love the #DevEx given by the Filament ecosystem, but as said, data-heavy dashboards full of UI elements can sometimes feel a bit heavy on the load since it's based on Livewire. So, the idea of combining Filament's power with Blaze's optimization (without changing a single line of business logic code!) is exactly the kind of pragmatic tech upgrade I'm for. I just had some minutes to try it on a custom page of a Filament lab project: the first render (so no cache) was taking 904.133ms. After just adding the Blaze::optimize directive, the same render time has been downed to 163.310ms! It was just a test project, but the promise seems to be kept! Has anyone deployed it in the wild yet? Did you actually notice that massive speedup in a real case scenario?
To view or add a comment, sign in
-
-
Vite 8 has dropped and you might not be aware of how powerful this update is... 👀 See, the way Vite used to work was separated into two bundlers ESBuild for fast development Rollup for production builds This made sense since ESBuild was designed to be very fast to support HMR (Hot Module Replacement) and not hinder your development process. Rollup was the perfectionist. It compiles to the smallest possible sizes, implements an aggressive tree-shaking mechanism (removing unused code), and smart code-splitting (breaking code into chunks so the browser only loads what it needs). Two different approaches for the same goal and it worked, until it didn't... As projects scaled, the cracks in this solution started to show: - Works on my machine: Because the dev environment and production environment used completely different engines to process code, you would occasionally run into terrifying bugs that only appeared after you built for production. - The Plugin Tax: Vite had to do a lot of heavy lifting to make rollup plugins work in ESBuild, which obviously wouldn't always be a 1-to-1 match. We needed a new solution, one that has the speed of ESBuild and the ecosystem & stability of Rollup, which is why the Vite team announced that they will be shifting to Rolldown! You don't even need to read anything more, just this simple shift in the background is going to save you tons of headaches and speed up your compilations with the swift capabilities of this rust transpiler. - Backwards compatible - Speed of Rust 🦀 - Predictable behavior across deployments - Your co-worker no longer says "but it works on my machine" In addition to the rolldown change, Vite has introduced first class support for Oxc tools. If you're not familiar Oxc's purpose is to replace your linting, formatting, minifying, resolving, parsing, and transforming of your code. It is an oxidation compiler written in rust to achieve up to 10-30x performance improvements. Imagine formatting entire codebases in milliseconds! There are much more things to be interested in for this update and I might write a blog in the future to highlight how to utilize them all but in the meantime I suggest you read their own blog highlighting the improvements in the top comment ⏬
To view or add a comment, sign in
-
-
🔥 Most backend projects start the same way… Boilerplate. Repetition. Reinventing the same patterns again and again. So I decided to fix it. 🚀 Introducing Easy Base Forge (v0.1.0) Not just another library, this is my attempt at redefining how we bootstrap backend systems. Built out of real needs from my own projects to make development faster, cleaner, and less painful. ⚡ Imagine: • No more rewriting the same CRUD scaffolding • Clear separation between base code and custom logic • Extensible architecture by design, not as an afterthought • Faster development without sacrificing structure This comes from real-world struggles with maintainability and customization at scale. And this is just v0.1.0, I’ll take it further if there’s interest. 👉 Check it out: https://lnkd.in/gx2qFh9F If backend development feels more repetitive than it should be… this might be for you. 💬 Feedback, ideas, or even brutal criticism all welcome. #BackendDevelopment #Java #SpringBoot #OpenSource #SoftwareArchitecture #DeveloperProductivity #BuildInPublic 🚀
To view or add a comment, sign in
-
As a Tech Recruiter, I often hear developers talk about how repetitive backend setup can be across projects. Today, I wanted to share something a bit more personal — a project built by my brother Akhash R, who is an early-career developer exploring real-world problems through code. He recently released Easy Base Forge (v0.1.0), which focuses on reducing boilerplate and bringing better structure to backend development, especially in the Java / Spring Boot space. Sharing this with my network — especially backend developers — as it might be something worth exploring and supporting 👇 🔗 https://lnkd.in/g6e23j8Q Would genuinely appreciate any feedback or thoughts from the community — it would mean a lot. #BackendDevelopment #Java #SpringBoot #OpenSource #DeveloperCommunity
🔥 Most backend projects start the same way… Boilerplate. Repetition. Reinventing the same patterns again and again. So I decided to fix it. 🚀 Introducing Easy Base Forge (v0.1.0) Not just another library, this is my attempt at redefining how we bootstrap backend systems. Built out of real needs from my own projects to make development faster, cleaner, and less painful. ⚡ Imagine: • No more rewriting the same CRUD scaffolding • Clear separation between base code and custom logic • Extensible architecture by design, not as an afterthought • Faster development without sacrificing structure This comes from real-world struggles with maintainability and customization at scale. And this is just v0.1.0, I’ll take it further if there’s interest. 👉 Check it out: https://lnkd.in/gx2qFh9F If backend development feels more repetitive than it should be… this might be for you. 💬 Feedback, ideas, or even brutal criticism all welcome. #BackendDevelopment #Java #SpringBoot #OpenSource #SoftwareArchitecture #DeveloperProductivity #BuildInPublic 🚀
To view or add a comment, sign in
Fullstack Developer · UI · Design · Frontend · TypeScript · Vue.js · Nuxt.js · React · Tailwind
1wFull post:https://listiak.dev/blog/vite-8-one-bundler-to-rule-them-all