GyaanSetu জাভাস্ক্রিপ্ট

জাভাস্ক্রিপ্ট এবং টাইপস্ক্রিপ্ট ইকোসিস্টেম।

78 articlesDeep, practical knowledge

Meteor 3.5 uWebSockets.js সুইচের মাধ্যমে CPU ব্যবহার ৯% কমায় এবং থ্রুপুট দ্বিগুণ করে

Meteor 3.5 একটি প্লাগেবল DDP ট্রান্সপোর্ট প্রবর্তন করেছে যা DDP_TRANSPORT=uws এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে uWebSockets.js-এ পরিবর্তন করা সম্ভব। এটি RPC-নির্ভর অ্যাপ্লিকেশনের জন্য ১.৬ গুণ পর্যন্ত বেশি থ্রুপুট, ৯% কম CPU, ১১% কম RAM এবং ২৬% কম GC পজ নিশ্চিত করে।

জাভাস্ক্রিপ্ট · 2 min read

Next.js-এ অ্যাডভান্সড সার্ভার সাইড ক্যাশিং আয়ত্ত করা

Next.js-এ অ্যাডভান্সড সার্ভার সাইড ক্যাশিং আয়ত্ত করা। একটি Next.js অ্যাপ স্কেল করার জন্য শুধুমাত্র SSR এবং SSG-এর মধ্যে বেছে নেওয়া যথেষ্ট নয়। আপনার ডেটা যত বাড়বে, তা কমানোর জন্য আপনার অ্যাডভান্সড ক্যাশিং প্রয়োজন হবে...

জাভাস্ক্রিপ্ট · 3 min read

Chrome DevTools ডিবাগার Playwright আপলোডের গতি ২০ গুণেরও বেশি কমিয়ে দেয়

যখন Coffer Playwright-এর মাধ্যমে একটি Chrome DevTools ডিবাগার সংযুক্ত করেছিল, তখন তাদের fetch-ভিত্তিক আপলোডের গতি ৬০০ Mbps থেকে কমে মাত্র ১১৩ Mbps-এ নেমে আসে—২০ গুণেরও বেশি এই ধীরগতির কারণে তাদের বেঞ্চমার্ক ফলাফল পুরোপুরি উল্টে যায়।

জাভাস্ক্রিপ্ট · 3 min read

SharedArrayBuffer সক্রিয় করতে গিয়ে আমাকে সব থার্ড-পার্টি স্ক্রিপ্ট বাদ দিতে হয়েছে

COOP এবং COEP হেডার যোগ করার ফলে প্রকৃত মাল্টিথ্রেডিংয়ের সুবিধা পাওয়া গেলেও এটি তাৎক্ষণিকভাবে অ্যানালিটিক্স, গুগল ফন্টস, ইউটিউব এমবেড এবং OAuth পপ-আপগুলোকে ব্লক করে দেয়, যা আমাকে অ্যাসেটগুলো সেলফ-হোস্ট করতে এবং ফ্রন্ট-এন্ড একদম শুরু থেকে নতুন করে লিখতে বাধ্য করেছে।

জাভাস্ক্রিপ্ট · 4 min read

ব্রাউজার বনাম নোড: যেখানে ইভেন্ট লুপের পার্থক্য তৈরি হয়

ব্রাউজার বনাম নোড: যেখানে ইভেন্ট লুপের পার্থক্য তৈরি হয়। ইভেন্ট লুপ জাভাস্ক্রিপ্ট ল্যাঙ্গুয়েজ স্পেসিফিকেশনের অংশ নয়। এটি হোস্ট এনভায়রনমেন্টের একটি অংশ। ব্রাউজার এবং নোড এটি ভিন্নভাবে ইমপ্লিমেন্ট করে...

জাভাস্ক্রিপ্ট · 4 min read

WooCommerce Social Login-এর ত্রুটির মাধ্যমে হ্যাকাররা যেকোনো WordPress অ্যাকাউন্ট দখল করতে পারে

CVE 2026 8457: WooCommerce Social Login Auth Bypass। WPWeb Elite-এর WooCommerce Social Login প্লাগইনটিতে একটি মারাত্মক নিরাপত্তা ত্রুটি রয়েছে। এই দুর্বলতার CVSS স্কোর হলো ৯.…

জাভাস্ক্রিপ্ট · 3 min read

Next.js 16.3 তাৎক্ষণিক কানেক্টিভিটি শনাক্ত করার জন্য পরীক্ষামূলক useOffline হুক যুক্ত করেছে

এই হুকটি একটি বুলিয়ান রিটার্ন করে যা রিয়েল-টাইমে আপডেট হয়, ফলে কোনো ফেচ (fetch) ব্যর্থ হওয়ার জন্য অপেক্ষা না করেই আপনি মূল অ্যাপের পরিবর্তে একটি সাধারণ “You are offline” মেসেজ দেখাতে পারেন, তবে এটি নিজে থেকে ক্যাশিং বা ব্যাকগ্রাউন্ড সিঙ্ক প্রদান করে না।

জাভাস্ক্রিপ্ট · 2 min read

AWS Bedrock Proxy ব্যবহার করে Claude Code ব্যবহারকারীরা টোকেন বিল ২০%–৩৫% কমিয়ে আনছেন

একজন ডেভেলপারের তৈরি ডকারাইজড (Dockerised) LiteLLM প্রক্সি Claude Code CLI-কে Bedrock-এর Amazon-এর Nova মডেলের সাথে কথা বলতে সক্ষম করে। এটি কাজের ধারা অপরিবর্তিত রেখে Anthropic-এর মূল্যের তুলনায় শেখার পর্যায়ের খরচ এক-তৃতীয়াংশ পর্যন্ত কমিয়ে দেয়।

জাভাস্ক্রিপ্ট · 3 min read

R8 Bytecode Rewrite-এর মাধ্যমে AGP 9.2.0 Kotlin Coroutine-এর গতি দ্বিগুণ করেছে

Android Gradle Plugin 9.2.0-এর সাথে থাকা R8 এখন reflective AtomicFieldUpdater কলগুলোকে একটি মাত্র Unsafe instruction দিয়ে প্রতিস্থাপন করছে, যা সিনক্রোনাইজেশন খরচ কমিয়ে দিচ্ছে এবং কোনো সোর্স কোড পরিবর্তন ছাড়াই প্রায় ২ গুণ দ্রুততর channel, mutex এবং StateFlow অপারেশন নিশ্চিত করছে।

জাভাস্ক্রিপ্ট · 4 min read

মে ২০২৬ রিলিজের মাধ্যমে SvelteKit রিমোট ফাংশন এবং নেটিভ TypeScript 6 সাপোর্ট যুক্ত করছে

মে ২০২৬ আপডেটটি ডেভেলপারদের একটি সাধারণ async কলের মাধ্যমে সার্ভার-সাইড লজিক কল করার সুবিধা দেবে, পাশাপাশি TypeScript 6 নিয়ে আসছে satisfies অপারেটর, দ্রুততর ইনক্রিমেন্টাল বিল্ড এবং আরও কঠোর রুট টাইপিং—যা সবকিছুই করা যাবে SvelteKit CLI ব্যবহার করেই।

জাভাস্ক্রিপ্ট · 3 min read

Apache DolphinScheduler 3.x আপগ্রেড করতে সম্পূর্ণ ক্লাস্টার রি-ওয়্যার এবং ডেটাবেস রিনেম করা প্রয়োজন

এই আপগ্রেডটি আপনাকে কোর টেবিলগুলোর নাম পরিবর্তন করতে, JSON টাস্ক ব্লবগুলোকে রিলেশনাল টেবিলে স্থানান্তর করতে এবং মনোলিথিক মাস্টারকে আলাদা MasterServer এবং WorkerServer নোড দিয়ে প্রতিস্থাপন করতে বাধ্য করে, যা ZooKeeper, JDBC বা Etcd-এর মাধ্যমে সমন্বয় করে।

জাভাস্ক্রিপ্ট · 3 min read

জার্মান ওটিপি ব্যর্থতা ডেটাবেসে ফোন নম্বর সংরক্ষণের ত্রুটিপূর্ণ পদ্ধতি উন্মোচন করেছে

ডেটাবেসে একই জার্মান মোবাইল নম্বর "0171 5550134" এবং "+49 171 5550134" হিসেবে সংরক্ষিত থাকায় একজন ব্যবহারকারী তার অ্যাকাউন্ট থেকে লক হয়ে যান; এর ফলে ওটিপিটি একটি ডুপ্লিকেট এন্ট্রিতে চলে যায় যা ব্যবহারকারীর কাছে পৌঁছাতে পারেনি।

জাভাস্ক্রিপ্ট · 3 min read

একটি মিসিং ইনডেক্স ৪৫ মিলি-সেকেন্ডের API-কে ১.৫ মিলিয়ন রো-এর জন্য ৮-সেকেন্ডের বিপর্যয়ে পরিণত করেছে

কীভাবে একটি আন-ইনডেক্সড কলাম আমাদের ডাটাবেসকে ধ্বংস করে দিল। একটি মাত্র মিসিং ইনডেক্স ৮ মিলি-সেকেন্ডের API-কে ৮ সেকেন্ডের দুঃস্বপ্নে পরিণত করেছে। একটি বড় রিলিজের আগে আমরা একটি লোড টেস্ট চালিয়েছিলাম। লোকাল ডেভেলপমেন্টে কাজ করছিল...

জাভাস্ক্রিপ্ট · 1 min read

লার্নিং প্ল্যাটফর্ম Node-এর vm Sandbox বাদ দিয়ে AST Whitelisting পদ্ধতি গ্রহণ করেছে

প্ল্যাটফর্মটি এখন Acorn AST পার্সার ব্যবহার করে শিক্ষার্থীদের লেখা প্রতিটি কুয়েরি পার্স করে এবং একটি কঠোর হোয়াইটলিস্টের বাইরের যেকোনো নোড প্রত্যাখ্যান করে। এটি রেজেক্স (regex) বাইপাস দূর করে এবং স্যান্ডবক্সের ভেতরে লাইভ ডেটাবেস হ্যান্ডেলগুলো উন্মোচিত হওয়া রোধ করে।

জাভাস্ক্রিপ্ট · 3 min read

হার্ড বাজেট এবং প্রম্পট ক্যাশিং ব্যবহার করে Claude Code টিমগুলো টোকেন বিল ৯০% পর্যন্ত কমিয়ে আনছে

একটি নতুন ডেভেলপার গাইড অনুযায়ী, টোকেনের জন্য কঠোর সীমা নির্ধারণ, ক্যাশ হিট নিশ্চিত করতে সিস্টেম প্রম্পট স্থিতিশীল রাখা এবং একটি খরচ-সচেতন কনটেক্সট ম্যানেজার ব্যবহার করার মাধ্যমে সেই লুকানো টোকেন বৃদ্ধি রোধ করা সম্ভব, যা প্রায়শই মাসিক Claude Code বিলকে দ্বিগুণ করে দেয়।

জাভাস্ক্রিপ্ট · 3 min read

React 18-এর useSyncExternalStore এক্সটার্নাল ডেটা থেকে UI ফ্লিকার বন্ধ করে

নতুন এই হুকটি useState এবং useEffect ব্যবহার করে এক্সটার্নাল ভ্যালু মিরর করার পুরনো পদ্ধতিকে প্রতিস্থাপন করে, যা কনকারেন্ট রেন্ডারিংয়ে 'tearing' প্রতিরোধ করে এবং নিশ্চিত করে যে একটি রেন্ডার সাইকেলের সময় UI-এর প্রতিটি অংশ একই স্ন্যাপশট ব্যবহার করছে।

জাভাস্ক্রিপ্ট · 4 min read

LiteRT.js MobileNetV2-কে ২,৪৩৯ FPS-এ পৌঁছে দিয়েছে – যা TensorFlow.js-এর চেয়ে ২৫ গুণেরও বেশি দ্রুত

Apple M2 Max-এ বেঞ্চমার্কিংয়ে দেখা গেছে যে LiteRT.js MobileNetV2-এর জন্য মাত্র ০.৪১ মিলি-সেকেন্ড ল্যাটেন্সি (২,৪৩৯ FPS) প্রদান করছে, যেখানে TensorFlow.js ১০.৮২ মিলি-সেকেন্ড (৯২ FPS)-এ আটকে রয়েছে। বড় মডেলগুলোর ক্ষেত্রে এই গতির ব্যবধান আরও বৃদ্ধি পায়, তবে ডেভেলপারদের ম্যানুয়ালি GPU টেনসর পরিচালনা করতে হবে এবং মোবাইলে সীমিত WebGPU সাপোর্ট সামলাতে হবে।

জাভাস্ক্রিপ্ট · 4 min read

WWF-এ দশটি অক্ষরের মান বেশি, যা বড় শব্দগুলোর ক্ষেত্রে একে ১১ পয়েন্টের সুবিধা দেয়

১৭২,৮৩৫টি ENABLE এন্ট্রি বিশ্লেষণ করে এই গবেষণায় দেখা গেছে যে, WWF-এর দশটি উচ্চ-মূল্যের অক্ষর প্রতি শব্দে গড়ে ২.৫২ পয়েন্টের সুবিধা দেয়; অন্যদিকে Scrabble শুধুমাত্র H এবং Y অক্ষরের ক্ষেত্রে WWF-কে ছাড়িয়ে যায়, তাও কখনোই তিন পয়েন্টের বেশি নয়।

জাভাস্ক্রিপ্ট · 3 min read

একটি মাত্র JWT রিফ্রেশ দিয়েই পাঁচটি খোলা ট্যাব প্রতিটি ব্যবহারকারীকে লগ আউট করে দিতে পারে

যখন পাঁচটি ট্যাব ঠিক একই মিলিসেকেন্ডে একটি মেয়াদোত্তীর্ণ JWT রিফ্রেশ করার চেষ্টা করে, তখন ব্যাকএন্ড অতিরিক্ত কলগুলোকে 'রিপ্লে অ্যাটাক' হিসেবে গণ্য করে রিফ্রেশ টোকেনটি বাতিল করে দেয় এবং প্রতিটি ট্যাব থেকে ব্যবহারকারীকে লগ আউট করে দেয়—এমন একটি পরিস্থিতি যা কোনো সিঙ্গেল-ট্যাব গার্ড দিয়ে প্রতিরোধ করা সম্ভব নয়।

জাভাস্ক্রিপ্ট · 3 min read

একটি ফিডে বিশটি আইটেম থাকলে একদম নিখুঁত মনে হয়। স্ক্রলিং একদম মসৃণ। আপনার ক্লায়েন্টও খুশি। তারপর যখন আপনি প্রোডাকশনে শিপ করেন, ডেটা

একটি ফিডে বিশটি আইটেম থাকলে একদম নিখুঁত মনে হয়। স্ক্রলিং একদম মসৃণ। আপনার ক্লায়েন্টও খুশি। তারপর যখন আপনি প্রোডাকশনে শিপ করেন, ডেটা আসে, আর হঠাৎ আপনি দুই হাজারটি রো-এর দিকে তাকিয়ে থাকেন...

জাভাস্ক্রিপ্ট · 6 min read