یک توسعهدهنده هدف یک حمله پیچیده زنجیره تأمین قرار گرفت که در قالب مصاحبه شغلی Web3 طراحی شده بود. مهاجمان با جعل هویت یک شرکت معتبر Web3 به اسم 0G Labs، از طریق LinkedIn و یک ریپازیتوری گیتهاب آلوده، یک بدافزار سهمرحلهای را با اجرای npm install تحویل میدادند. بدافزار اطلاعات محیطی (env) را به یک سرور C2 در تگزاس ارسال میکرد و یک درب پشتی TCP دائمی باز میکرد. محقق امنیتی این حمله را در یک محیط ایزوله بازسازی کرد و پروتکل کامل C2 را مهندسی معکوس کرد.
Node.js 26 با چند تغییر مهم معرفی شده که مهمترینشون فعالسازی پیشفرض Temporal API هست؛ یه جایگزین مدرن و قدرتمند برای Date قدیمی جاوااسکریپت. موتور V8 هم به نسخه ۱۴.۶ ارتقا پیدا کرده و Undici هم به نسخه ۸ رسیده. این نسخه فعلاً در وضعیت «Current» قرار داره و از اکتبر ۲۰۲۶ وارد مرحله LTS میشه.
Honker یه افزونه SQLite هست که امکانات NOTIFY/LISTEN شبیه به Postgres رو به SQLite اضافه میکنه. با این ابزار میشه صف کار، پابساب دائمی، و استریم رویدادها رو مستقیم توی همون فایل .db داشت، بدون نیاز به Redis، Celery یا هیچ برنامه واسطهای. عملیاتهای بیزینسی و صف پیامها توی یه تراکنش اتفاق میافتن، یعنی اگه rollback بشه، هر دو باهم برمیگردن. Honker از طریق یه افزونه قابل بارگذاری SQLite کار میکنه و برای Python، Node.js، Go، Ruby، Rust، Bun و Elixir باینینگ داره.
officeParser یه کتابخونه Node.jsه که میتونه فایلهای DOCX، XLSX، PPTX، PDF، RTF و فرمتهای OpenDocument رو پارس کنه و محتوا، متادیتا و پیوستها رو به صورت یه درخت ساختاریافته (AST) برگردونه. این کتابخونه هم سمت سرور و هم توی مرورگر کار میکنه و حتی OCR با Tesseract.js هم داره. تا الان بیش از ۱۰ میلیون بار دانلود شده و هفتهای بیش از ۲۶۰ هزار بار استفاده میشه. برای توسعهدهندههایی که فقط دنبال استخراج متن خالی نیستن و به ساختار کامل سند نیاز دارن، گزینه خوبیه.
whatsapp-api-js یه کتابخونهی سبک و بدون dependency برای TypeScript/JavaScript هست که کار با WhatsApp Cloud API رو خیلی راحت میکنه. با این کتابخونه میتونی ربات واتساپ بسازی که پیامهای متنی، عکس، سند و انواع دیگه رو دریافت و ارسال کنه. نسخهی v6 این کتابخونه کاملاً تایپدار هست و برای رانتایمها و فریمورکهای مختلف پشتیبانی داره. راهاندازیش هم سادهست و فقط به یه اپ Meta Business با WhatsApp API فعال نیاز داری.
@pinojs/redact یه کتابخونهی جاوااسکریپته که بهت اجازه میده اطلاعات حساس مثل پسورد، کوکی و توکن رو از آبجکتها حذف یا مخفی کنی، بدون اینکه آبجکت اصلی تغییر کنه. به جای کلون کامل آبجکت، فقط بخشهایی که باید redact بشن رو کپی میکنه و بقیهرو همونطور نگه میداره. این روش هم حافظه رو بهینه میکنه و هم به سرعت fast-redact نزدیکه. رابط کاربری این کتابخونه با fast-redact سازگاره و از wildcard، bracket notation و ایندکس آرایه پشتیبانی میکنه.
پاستل یه فریمورک جالبه که با الهام از Next.js، ساخت ابزارهای خط فرمان (CLI) رو با ریاکت و Ink ممکن میکنه. کافیه فایلها رو توی پوشه commands بذاری تا دستوراتت تعریف بشن، بدون پیچیدگی اضافه. تعریف گزینهها و آرگومانها هم با Zod انجام میشه و type-safety کامل داری. در نهایت پیام help هم بهصورت خودکار تولید میشه.
TanStack Start یه فریمورک نسبتاً جدیده که روی TanStack Router سوار شده و امکاناتی مثل Server Functions، API Endpoints و رندر سمت سرور رو میده. تو این مقاله، یه بلاگ ساده باهاش میسازیم که پستها رو از فایلهای Markdown میخونه. نکته جالب اینه که لودرهای TanStack ایزومورفیکن؛ یعنی هم روی سرور و هم روی کلاینت اجرا میشن، که این یه چالش جدی برای خوندن فایلهای دیسک ایجاد میکنه. راهحل؟ Server Functions که همیشه روی سرور اجرا میشن، حتی وقتی از کلاینت صداشون میزنی.
Bun یه runtime سریع برای جاوااسکریپت و تایپاسکریپته که این روزا خیلی سر و صدا کرده. میشه از طریق روشهای مختلفی مثل curl، npm، PowerShell، Scoop، Homebrew یا Docker نصبش کرد. بعد از نصب هم با یه دستور ساده میشه آپدیتش نگه داشت. این ابزار همچنین قابلیت اجرای تستهای ایزوله و موازی رو هم داره.
تیم Harper یه بایندینگ کاملاً جدید برای RocksDB در Node.js ساخته به اسم rocksdb-js که از صفر نوشته شده و همه چیزی که از یه بایندینگ حرفهای انتظار داری رو داره: پشتیبانی کامل از تراکنش، ایتریتورهای lazy، TypeScript، و باینری آماده برای همه پلتفرمهای اصلی. این کتابخانه زیر لایسنس Apache 2.0 منتشر شده و قلب Harper 5.0 به حساب میاد. هدف اینه که یه ابزار مستقل و عمومی برای کل اکوسیستم Node.js باشه.
Aube یه پکیج منیجر جدید برای Node.js هست که ادعا میکنه ۹.۲ برابر سریعتر از pnpm و ۲.۷ برابر سریعتر از Bun کار میکنه. یه ویژگی جالبش اینه که نیازی به مایگریشن lockfile نداره و میتونه با yarn.lock، pnpm-lock.yaml و package-lock.json موجود کار کنه. به جای اینکه پکیجها رو توی هر پروژه کپی کنه، یه استور سراسری داره و پروژهها رو به اون لینک میکنه که مصرف دیسک رو تا ۹۰٪ نسبت به npm کاهش میده. امنیت هم یه اولویت جدی توش هست و برای lifecycle scriptها و پکیجهای جدید سیاستهای سختگیرانهای داره.
Portless یه ابزار Node.js هست که بهجای آدرسهای عددی مثل localhost:3000، یه URL باثبات و اسمدار مثل بهتون میده. با یه دستور ساده جلوی پروژهتون میشینه، HTTPS و HTTP/2 رو بهصورت خودکار فعال میکنه و نیازی به هیچ تنظیم دستی نداره. هم برای پروژههای تکی، هم مونورپو و هم گیت ورکتریها پشتیبانی داره و با فریمورکهای معروف مثل Next.js، Vite، Nuxt و Angular بهخوبی کار میکنه.
bwip-js یه کتابخونه جاوااسکریپتیه که بهت اجازه میده مستقیم توی مرورگر یا Node.js بارکد بسازی، بدون نیاز به هیچ سرویس خارجی یا پلاگین اضافهای. از انواع مختلف بارکد پشتیبانی میکنه و خروجیاش رو میشه هم بهصورت Canvas و هم SVG رندر کرد. فایل نهایی رو هم میشه مستقیم به فرمت PNG یا JPEG ذخیره کرد.
bwip-js یه کتابخونهی جاوااسکریپتیه که بیش از ۱۰۰ نوع بارکد خطی و دوبعدی رو پشتیبانی میکنه و روی مرورگر، Node.js، React Native و محیطهای دیگه هم اجرا میشه. خروجیش میتونه PNG، Canvas یا SVG باشه و برای کارهای وب و سرور هر دو مناسبه. نصبش با npm خیلی سادست و یه API آنلاین هم داره که بدون نیاز به سرور جاوااسکریپتی میشه ازش استفاده کرد.
تایپاسکریپت ۶ بهتازگی منتشر شد و یه نسخهی خاص و منحصربهفرده؛ چون آخرین نسخهایه که روی کدبیس جاوااسکریپت فعلی بنا شده. این نسخه عملاً یه پل بین ۵.۹ و نسخهی بزرگ بعدیه — تایپاسکریپت ۷ که با Go بازنویسی شده. چند بهبود جذاب هم توی این نسخه هست: استنتاج نوع بهتر برای توابع بدون this، و پشتیبانی از subpath importهایی که با #/ شروع میشن.
pnpm نسخه ۱۱ یه دستور جدید تجربی به اسم pack-app معرفی کرده که میتونه یه فایل CJS رو به یه فایل اجرایی مستقل تبدیل کنه؛ بدون اینکه کاربر نهایی نیازی به نصب Node.js داشته باشه. این دستور از قابلیت Single Executable Applications که توی Node.js وجود داره زیر پوستش استفاده میکنه. میشه همزمان برای چند پلتفرم مثل Linux، macOS و Windows خروجی گرفت. تنظیمات پیشفرض هم توی package.json قابل تعریفان تا دیگه نیازی به پاس دادن آرگومانهای تکراری نباشه.
اگه با npm کار میکنی، احتمالاً یه مشکل بزرگ داری: هر بار که یه پروژه جدید میسازی، همه وابستگیها دوباره روی دیسکت کپی میشن. pnpm این مشکل رو با یه روش هوشمند حل میکنه؛ وابستگیها رو در یه مخزن مرکزی نگه میداره و بین پروژهها به اشتراک میذاره. نتیجه؟ فضای خیلی کمتری مصرف میشه و نصب پکیجها هم بهمراتب سریعتره. علاوه بر این، برخلاف npm و Yarn، پوشه node_modules رو تخت و آشفته نمیذاره و فقط وابستگیهای مستقیم پروژه رو در دسترس کد قرار میده.