২০২৬ সালের মার্চ মাসে Vite 8 মুক্তি পেতে যাচ্ছে, যার সাথে থাকছে Rolldown নামক একটি Rust-ভিত্তিক বান্ডলার এবং Oxc নামক একটি নতুন পার্সার/মিনিফায়ার। এটি অনেক বাস্তবধর্মী প্রজেক্টের ফ্রন্ট-এন্ড বিল্ড টাইম দশগুণ কমিয়ে দেবে। একটি পরীক্ষায়, যা আগে ৪৬ সেকেন্ড সময় নিত, সেই একই কোড এখন মাত্র ৬ সেকেন্ডে কম্পাইল হচ্ছে—এমন একটি পরিবর্তন যা প্রতিটি ডেভেলপারের প্রতিদিনের কাজের অনেক সময় বাঁচিয়ে দিতে পারে।
কেন এই গতি গুরুত্বপূর্ণ
ফ্রন্ট-এন্ড টিমগুলো তাদের স্প্রিন্টের একটি বড় অংশ ব্যয় করে রিবিল্ড (rebuild) এবং হট-মডিউল রিপ্লেসমেন্টের (hot-module replacement) কাজে। যখন একটি বিল্ড করতে আগে যেখানে আধা মিনিট সময় লাগত এখন সেখানে এক মিনিট সময় লাগে, তখন ফিডব্যাক লুপ বাধাগ্রস্ত হয় এবং শিপিং ধীর হয়ে যায়। দশগুণ সময় কমার অর্থ হলো সরাসরি দ্রুততর ইটারেশন (iteration), আরও নিখুঁত টেস্টিং এবং দ্রুততর রিলিজ। বড় কোডবেসের ক্ষেত্রে—যেমন কয়েক হাজার মডিউল—সঞ্চিত সময়ের পরিমাণ প্রতি সপ্তাহে কয়েক ঘণ্টা পর্যন্ত হতে পারে।
Vite 8-এ নতুন কী আছে
- Rolldown – একটি Rust-লিখিত বান্ডলার যা Rollup-এর জায়গা নেবে। যেহেতু Rust নেটিভ কোডে কম্পাইল হয়, তাই বান্ডলিং ধাপটি JavaScript-ভিত্তিক বিকল্পগুলোর তুলনায় অনেক দ্রুত চলে।
- Oxc – একটি পার্সার এবং মিনিফায়ার যা esbuild-এর জায়গা নেবে। এটি একটি নেটিভ বাইনারি হিসেবে কাজ করে, যা JavaScript পার্সিংয়ের ওভারহেড কমিয়ে দেয়।
- Native TypeScript path support – অতিরিক্ত
vite-tsconfig-pathsপ্লাগইনের প্রয়োজন আর থাকবে না; কনফিগারেশনেresolve.tsconfigPaths: trueসেট করাই যথেষ্ট। - Full Bundle Mode – ডেভেলপাররা ডেভ সার্ভার চালানোর সময় প্রোডাকশন-স্টাইল বান্ডল ব্যবহার করতে পারবেন। এই মোডটি ডেভ-সার্ভারের স্টার্টআপ টাইম তিনগুণ কমিয়ে দেয় এবং ফুল পেজ রিলোড প্রায় ৪০% দ্রুততর করে।
এই সমস্ত উপাদান একটি একক Rust টুলচেইনের ওপর ভিত্তি করে তৈরি, যা ডেভেলপমেন্ট এবং প্রোডাকশন আচরণের মধ্যকার ব্যবধান কমিয়ে আনে। ডেভ সার্ভারকে চালিত করা একই কম্পাইল্ড আউটপুট এখন প্রোডাকশন বান্ডলের প্রতিফলন ঘটায়, ফলে “works on my machine” সংক্রান্ত অপ্রত্যাশিত সমস্যাগুলো কমে যায়।
কীভাবে আপগ্রেড করবেন
- Node version – Vite 8-এর জন্য Node 20.0.0 বা তার পরবর্তী ভার্সন প্রয়োজন।
- Vite package –
npm install vite@latest @vitejs/plugin-react@latestকমান্ডটি চালান। - Plugin cleanup –
vite-tsconfig-pathsবাদ দিন; এর পরিবর্তেresolve.tsconfigPaths: trueব্যবহার করুন। - Babel swap – আপডেট করা
@vitejs/plugin-reactএখন Oxc ব্যবহার করে, যা Babel-এর তুলনায় ছোট এবং দ্রুততর একটি বিকল্প।
আপনি যদি Full Bundle Mode ব্যবহার করতে চান, তবে আপনার ডেভ কনফিগারেশনে এই ফ্ল্যাগটি যোগ করুন:
export default defineConfig({
dev: {
bundleMode: true,
},
});
Rolldown-এর কম্প্যাটিবিলিটি লেয়ারটি বেশিরভাগ Rollup অপশনকে সমর্থন করে, তাই বিদ্যমান কনফিগারেশন ফাইলগুলো সাধারণত আপগ্রেডের সময় অপরিবর্তিত থাকে। এই ধাপগুলো অনুসরণ করার পর একটি সফল বিল্ড মানে হলো মাইগ্রেশন সম্পন্ন হয়েছে।
বড় প্রজেক্টের ওপর প্রভাব
Monorepos বা প্রচুর থার্ড-পার্টি লাইব্রেরি সমৃদ্ধ অ্যাপ্লিকেশনের ক্ষেত্রে ডেভ সার্ভার প্রায়ই একটি বাধা (bottleneck) হয়ে দাঁড়ায়। Full Bundle Mode-এর তিনগুণ দ্রুত স্টার্টআপের অর্থ হলো নতুন কন্ট্রিবিউটররা খুব অল্প সময়ে একটি লোকাল এনভায়রনমেন্ট সেটআপ করতে পারবেন। ৪০% দ্রুততর ফুল রিলোড “refresh-and-test” লুপটিকে আরও কার্যকর রাখে, এমনকি যখন কোনো পরিবর্তন অনেকগুলো মডিউলকে প্রভাবিত করে।
যেহেতু বান্ডলার এবং পার্সারগুলো নেটিভ বাইনারি, তাই সম্পূর্ণ JavaScript স্ট্যাকের তুলনায় প্রাথমিক ইনস্টল সাইজ কিছুটা বাড়বে। ডিস্ক স্পেস সীমিত এমন CI runners-এর জন্য বরাদ্দকৃত স্টোরেজ কিছুটা বাড়ানোর প্রয়োজন হতে পারে। এছাড়া, কিছু বিশেষ Rollup প্লাগইন যা JavaScript ইন্টারনালের ওপর নির্ভরশীল, সেগুলোতে কিছু ক্ষেত্রে অসামঞ্জস্যতা দেখা দিতে পারে, যার জন্য আপগ্রেডের পর একটি সংক্ষিপ্ত অডিট প্রয়োজন হতে পারে।
পরবর্তী করণীয় কী
- Community tooling – প্লাগইন লেখকরা এখন Rust-সামঞ্জস্যপূর্ণ ভার্সন প্রকাশ করতে শুরু করেছেন। ইকোসিস্টেমের ওপর নজর রাখলে অপ্রত্যাশিত সমস্যা এড়ানো সহজ হবে।
- Performance metrics – যারা এটি আগে ব্যবহার করছেন তারা বেঞ্চমার্ক স্যুট পোস্ট করছেন। সেই সংখ্যাগুলোর সাথে আপনার নিজস্ব রিপোজিটরির তুলনা করলে নিশ্চিত হওয়া যাবে যে, বিজ্ঞাপিত ১০ থেকে ৩০ গুণ গতির সুবিধা আপনার নির্দিষ্ট কাজের ক্ষেত্রে কার্যকর কি না।
- Future Vite releases – টিমটি বান্ডলিংয়ের বাইরেও আরও গভীর Rust ইন্টিগ্রেশনের ইঙ্গিত দিচ্ছে, যা ডেভেলপমেন্ট এবং প্রোডাকশনের মধ্যকার ব্যবধানকে আরও কমিয়ে আনতে পারে।
সারসংক্ষেপ
Vite 8-এর Rust-ভিত্তিক কোর একটি দৃশ্যমান গতি বৃদ্ধি প্রদান করে যা ফ্রন্ট-এন্ড ডেভেলপমেন্টের দৈনন্দিন কাজের গতিপথ বদলে দেয়। যেসব টিম ধীরগতির রিবিল্ড নিয়ে সমস্যায় ভুগছেন, তাদের জন্য আপগ্রেড করার পথটি অত্যন্ত সহজ এবং এর পারফরম্যান্সের সুফল পাওয়া যাবে তাৎক্ষণিকভাবে। বড় বাইনারি ফাইল এবং প্লাগইন অডিটের মতো বিষয়গুলো প্রতিটি বিল্ডে সাশ্রয় হওয়া সময়ের তুলনায় খুবই সামান্য। যদি আপনার প্রজেক্টের বিল্ড টাইম এখনও ধীরগতির মনে হয়, তবে Vite 8-এ সুইচ করা আপনার কাজের গতি বাড়ানোর একটি কার্যকর উপায়।
