es
Feedback
DevTwitter | توییت برنامه نویسی

DevTwitter | توییت برنامه نویسی

Ir al canal en Telegram

توییت های برنامه نویسی و طراحی وب :) @dvtwi Hashtags: devtwitter.t.me/5 DevBooks Channel: https://t.me/+AYbOl75CLNYxY2U0 Github: https://github.com/DevTwitter X: https://x.com/devtwittir

Mostrar más

📈 Análisis del canal de Telegram DevTwitter | توییت برنامه نویسی

El canal DevTwitter | توییت برنامه نویسی (@devtwitter) en el segmento lingüístico de Farsi es un actor destacado. Actualmente la comunidad reúne a 29 045 suscriptores, ocupando la posición 4 716 en la categoría Tecnologías y Aplicaciones y el puesto 11 748 en la región Irán.

📊 Métricas de audiencia y dinámica

Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 29 045 suscriptores.

Según los últimos datos del 17 junio, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de 928, y en las últimas 24 horas de 52, conservando un alto alcance.

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 25.69%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 17.42% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 7 457 visualizaciones. En el primer día suele acumular 5 057 visualizaciones.
  • Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 69.
  • Intereses temáticos: El contenido se centra en temas clave como پرو, #کوته_نیوز, ارتباط, ابزار, چیز.

📝 Descripción y política de contenido

El autor describe el recurso como un espacio para expresar opiniones subjetivas:
توییت های برنامه نویسی و طراحی وب :) @dvtwi Hashtags: devtwitter.t.me/5 DevBooks Channel: https://t.me/+AYbOl75CLNYxY2U0 Github: https://github.com/DevTwitter X: https://x.com/devtwittir

Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 18 junio, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.

29 045
Suscriptores
+5224 horas
+3097 días
+92830 días
Archivo de publicaciones
آسیب پذیری بحرانی React و Next.js با CVE-2025-55182 با شدت ۱۰ منتشر شد! مهاجم با استفاده از RSC میتواند کد دلخواه را بر روی س
آسیب پذیری بحرانی React و Next.js با CVE-2025-55182 با شدت ۱۰ منتشر شد! مهاجم با استفاده از RSC میتواند کد دلخواه را بر روی سرور اجرا کند. نسخه های Patch شده به شرح زیر است : 16.0.7, 15.5.7, 15.4.8, 15.3.6, 15.2.6, 15.1.9, 15.0.5 لطفا سریعا به روز رسانی کنید و دوستان خود را مطلع کنید. https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components @DevTwitter | <Ali Saleh/>

سلام، دیروز یه اتفاق خیلی باحال افتاد، پلاگینی که نوشتم رسماً توی kubernetes-sigs/krew-index مرج شد اسمش kubectl-edit-secretـ
سلام، دیروز یه اتفاق خیلی باحال افتاد، پلاگینی که نوشتم رسماً توی kubernetes-sigs/krew-index مرج شد اسمش kubectl-edit-secretـه و ایده‌ش هم از یه درد واقعی شروع شد. چند روز پیش Hossein AliHosseini گفت: «آقا این پلاگین view-secret (که من خودمم قبلاً تو لینکدین معرفی کردم) چقدر باحاله که Secret رو decode می‌کنه و بی‌دردسر نشون میده، خب بیا یه نسخه editـش رو هم بزنیم» راست هم می‌گفت. هر بار برای ادیت کردن یه Secret باید base64 رو decode کنی، تغییر بدی، دوباره encode کنی، apply بزنی… و همیشه هم احتمال اشتباه هست. حالا با این پلاگین می‌تونی Secret رو به صورت متن واقعی و decode‌شده ادیت کنی. خودش Secret رو می‌گیره، تمام فیلدها رو decode می‌کنه، توی ادیتور باز می‌کنه، و بعد از سیو دوباره encode و apply می‌کنه. یعنی عملاً فقط: kubectl edit-secret my-secret و تمام. دیگه با base64 کاری نداری. از طریق Krew هم قابل نصبه: kubectl krew install edit-secret اگر دوست دارید کدش رو ببینید یا مشارکت کنید: https://github.com/BardiaYaghmaie/kubectl-edit-secret @DevTwitter | <Bardia Yaghmaie/>

Repost from N/a
هزینه خرید هوش مصنوعی های مختلف خیلی زیاده، از جمله چت جی پی تی و جمنای. اینجا دور هم دیگه جمع شدیم و راه حلی ارائه دادیم که
هزینه خرید هوش مصنوعی های مختلف خیلی زیاده، از جمله چت جی پی تی و جمنای. اینجا دور هم دیگه جمع شدیم و راه حلی ارائه دادیم که بتونیم به صورت اقتصادی و بدون بن شدن، از اکانت های هوش مصنوعی استفاده کنیم. یه سری بهمون بزن 👇 https://t.me/+rq2-BOXLTdBiYjFk

لینوس اینجا چند تا چیز جالب میگه یکیش اینه که من حوصله سربر بودن و یکنواخت بودن رو بیشتر از داشتن ایده های خط شکن و به دردسر
لینوس اینجا چند تا چیز جالب میگه یکیش اینه که من حوصله سربر بودن و یکنواخت بودن رو بیشتر از داشتن ایده های خط شکن و به دردسر انداختن میلیونها کاربر دوست دارم. ولی اونجا که گفت کار اصلی از نگهداری سیستم شروع میشه واقعا درخشانه. به نظرم یکی از دلایل موفقیت لینوکس این بود که بارها از نو نوشته نشد بلکه یک بار ولی نه یک باره نوشته شده. کل مسیر توسعه لینوکس یک روند ادامه دار به هم متصله. https://www.youtube.com/watch?v=tWx769t1JKg @DevTwitter | <Navid Shokri/>

خیلی وقت پیش یه Prometheus Exporter نوشته بودم برای بازی های لیگ برتر فوتبال :))) دستی بهش کشیدم و پابلیکش کردم برای کسایی که
خیلی وقت پیش یه Prometheus Exporter نوشته بودم برای بازی های لیگ برتر فوتبال :))) دستی بهش کشیدم و پابلیکش کردم برای کسایی که هر سوراخی رو مانیتور میکنن https://github.com/hatamiarash7/iranleague-exporter @DevTwitter | <Arash Hatami/>

Repost from Sharif ICT
📣 قابل توجه برنامه‌نویسان عزیز 👨‍💻 ✔️ ثبت‌نام رایگان سیزدهمین دوره ماراتون برنامه‌نویسی تلفن همراه کشور (دانشگاه صنعتی شری
📣 قابل توجه برنامه‌نویسان عزیز 👨‍💻 ✔️ ثبت‌نام رایگان سیزدهمین دوره ماراتون برنامه‌نویسی تلفن همراه کشور (دانشگاه صنعتی شریف) آغاز شد | Sharif MPM 13 🥇 شصت ساعت رقابت شبانه روزی هیجان انگیز در باسابقه‌ترین و معتبرترین مسابقه برنامه‌نویسی تلفن همراه ➕ ثبت‌نام به صورت تیم‌های ۲ الی ۴ نفره انجام می‌شود. ❗️شرکت کنندگان در طول مدت مسابقه در محل رویداد مستقر می شوند و اجازه خروج از محل برگزاری را ندارند. 🗓 پایان مهلت ثبت نام تا 20 آذر می باشد. ( ظرفیت پذیرش در مسابقات محدود است) 📍 27 الی 29 آذر 1404 در محل دانشگاه صنعتی شریف 🎁 جوایز نقدی و غیر نقدی برای تیم‌های برتر 📌 به همراه امکان مصاحبه و استخدام در شرکت‌های حامی مسابقات برای کلیه شرکت‌کنندگان ⚠️ کلیک کنید تا یادآور ثبت‌نام به گوگل کلندر شما اضافه شود. 🖥ثبت‌نام رایگان و کسب اطلاعات بیشتر: 🌐 https://mpm.sharifict.ir 📱 @sharifit | 📱 @sharif_ict

تم درست کردم برای Vs Code فقط طیف رنگی آبی و سفید که بیشتر برای ++C/C استفاده بشه بهتر است. مینیمال و زیباست، اگر دوست داشتید
تم درست کردم برای Vs Code فقط طیف رنگی آبی و سفید که بیشتر برای ++C/C استفاده بشه بهتر است. مینیمال و زیباست، اگر دوست داشتید استار دهید و حمایت کنید. https://github.com/Ho3seinTork/blue-spectrum-color-theme.git @DevTwitter | <Diss Obedience/>

نرم‌افزار Scrcpy یک ابزار کاربردی شاهکار برای کنترل گوشی اندروید از روی کامپیوتر. سبکه، بدون نصب اضافی، و کنترل کامل دستگاه ر
نرم‌افزار Scrcpy یک ابزار کاربردی شاهکار برای کنترل گوشی اندروید از روی کامپیوتر. سبکه، بدون نصب اضافی، و کنترل کامل دستگاه رو میده، از صفحه و صدا گرفته تا کیبورد و موس. میتوان ازش برای Screen Sharing، ضبط ویدیو/صدا، یا به‌عنوان Webcam هم استفاده کرد. https://github.com/Genymobile/scrcpy @DevTwitter | <Mohammad/>

وقتی با مدلهای LLM و سیستم های ایجنتیک کار میکنید یکی از مهمترین کارهایی که باید انجام بدید/بنظرم مهمترین کار اینه که پرفورمنس سیستم را ارزیابی کنید یا به اصطلاح evaluation انجام بدید. اگه بدون evaluation ایجنت میسازید به هیچ دردی نمیخوره! این منبع ارزشمند/۵۰ صفحه مطلب را حتما بخونید. Link: https://huggingface.co/spaces/OpenEvals/evaluation-guidebook#what-is-model-evaluation-about @DevTwitter | <Mehdi Allahyari/>

📱 ChatGPT Premium🛍 ➖➖➖➖➖➖➖➖➖➖ ⚫️فعال سازی اشتراک بر روی ایمیل شخصی شما. ⚫️تمام سفارش‌ها دارای ضمانت تعویض و بازگشت وجه فوری
📱 ChatGPT Premium🛍 ➖➖➖➖➖➖➖➖➖➖ ⚫️فعال سازی اشتراک بر روی ایمیل شخصی شما. ⚫️تمام سفارش‌ها دارای ضمانت تعویض و بازگشت وجه فوری هستند. ⚫️تخفیف فعلی به دلیل آفر رسمی سایت می‌باشد و برای مدت محدود فعال است. ⚫️پرداخت بعد از تحویل. ➖➖➖➖➖➖➖➖➖➖ 💲قیمت اشتراک 🟠 3️⃣4️⃣9️⃣🔤 ➖➖➖➖➖➖➖➖➖➖ 🙂جهت مشاوره و خرید سریع کلیک‎ کنید ❤️ در کانال ما عضو شوید

داستان خلق Node.js — جایی که یک نارضایتی ساده تبدیل به انقلاب شد سال ۲۰۰۹، «رایان دال» پشت لپ‌تاپش نشسته بود و به یک ویدیو ساده در وب فکر می‌کرد: چرا هنوز مرورگرها نمی‌توانند یک فایل را کاملاً غیرهمزمان آپلود کنند؟ چرا برای کوچک‌ترین عملیات I/O باید کل برنامه منتظر بماند؟ و چرا زبان‌های سمت سرور هنوز این‌قدر سنگین و بلاک‌کننده کار می‌کنند؟ این سؤال‌ها شاید پیش‌پاافتاده به‌نظر برسند، اما برای دال تبدیل شدند به جرقه یک تغییر بزرگ. در آن زمان، بیشتر زبان‌های سمت سرور مانند PHP، Python یا Ruby یک مشکل مشترک داشتند: هر درخواست، یک Thread. هر Thread، حافظه زیاد. و هر برنامه، یک سقف محدود برای مقیاس‌پذیری. برای دنیایی که سرعت اینترنت داشت بالا می‌رفت و کاربران همزمان بیشتر می‌شدند، این مدل دیگر جواب نمی‌داد. دال به‌جای اینکه مشکل را با سخت‌افزار بیشتر حل کند، از خودش پرسید: اگر بتوانیم مدل سرور را مثل مرورگر طراحی کنیم چه؟ جایی که همه‌چیز Event-Driven باشد، بدون بلاک شدن، بدون Threadهای سنگین. و این‌طور شد که یک ایده جسورانه شکل گرفت: ساخت یک Runtime سبک، سریع، مبتنی بر event loop، و توانمند در مدیریت هزاران اتصال همزمان. جاوااسکریپت انتخاب شد، نه به خاطر اینکه بهترین زبان جهان بود، بلکه به‌خاطر اینکه یک ویژگی حیاتی داشت: تک‌ رشته‌ای (Single-threaded) بودن و مدل رویداد محور طبیعی. نتیجه؟ در JSConf اروپا، دال برای اولین بار چیزی را معرفی کرد که صنعت وب را تکان داد: Node.js با ارائه‌ی مفهومی جدید از ساخت Back-end — جایی که شبکه‌سازی، I/O، و اجرای همزمان، بدون Threadهای سنگین و با سرعت باورنکردنی قابل انجام بود. ابزار Node.js به سرعت از یک تجربه آزمایشگاهی تبدیل شد به ابزاری که امروز موتور بسیاری از شرکت‌های بزرگ دنیاست: Netflix، Uber، PayPal، LinkedIn و ده‌ها نام دیگر. این داستان از این جهت الهام‌بخش است که نشان می‌دهد: گاهی یک نارضایتی ساده در ذهن یک برنامه‌نویس، می‌تواند آینده‌ی یک صنعت را تغییر دهد. @DevTwitter | <Ali Yousefi/>

اگه زیاد از terminal CLI استفاده میکنید مثل من و میخواهید فایلهای اکسل را بخونید و یا سرچ کنید و .. این ابزار خیلی عالیه. خیلی خوشگل و مرتب فایل ها را نشون میده، امکان سرچ و کپی داره و کلی فیچر دیگه. گیتهابشون را چک کنید. https://github.com/bgreenwell/xleak/ @DevTwitter | <Mehdi Allahyari/>

در زبان Go مفهومی به نام Goroutine وجود دارد اما Goroutine چیست؟ اول باید بگم که زبان go برعکس زبان جاوااسکریپت و تایپ‌اسکریپ
در زبان Go مفهومی به نام Goroutine وجود دارد اما Goroutine چیست؟ اول باید بگم که زبان go برعکس زبان جاوااسکریپت و تایپ‌اسکریپت مفهموم Concurrency (همزمانی) را به صورت کاملا واقعی در CPU اجرا میکند در حالی که جاوااسکریپت و تایپ‌اسکریپت اینکار را فقط شبیه‌سازی می‌کنند و یکی از دلایل سرعت بالای این زبان همین امر است یعنی go میتونه دستورات رو در Thread های مختلف CPU به صورت کاملا واقعی اجرا کنه حالا بریم سراغ مفهوم Goroutine بخوام به ساده‌ترین شکل ممکن بگم کارش برعکس async/await در زبان جاوااسکریپت هست (البته فقط در ظاهر) گوروتین میتونه تابع و دستور مورد نظر مارو در یک Thread متفاوت اجرا کنه تا مابقی کد ما متوقف نشه و سایر کدهای ما همزمان اجرا بشه و برنامه منتظر نمونه یعنی وقتی یه تابعی داریم که زمانبر هست و ما نیازی به خروجی اون تابع در ادامه کد نداریم (مثل لاگ انداختن) از گوروتین استفاده میکنیم تا کل برنامه منتظر اتمام اون تابع نشه (در عکس یه مثال ساده از گوروتین رو براتون آوردم) @DevTwitter | <sina khaghani/>

سلام و دورد امروز یه ربات_تلگرام با nodejs نوشتم به در خواست تیم مارکتینگ برای اعضای کانال تلگرامی شرکت که خیلی خیلی ساده اس
سلام و دورد امروز یه ربات_تلگرام با nodejs نوشتم به در خواست تیم مارکتینگ برای اعضای کانال تلگرامی شرکت که خیلی خیلی ساده اس و کاربران فقط میزنن روی قرعه کشی و آیدیشون ثبت میشه برای قرعه کشی و اعلام برنده و اینکه به ادمین هم امکان خروجی فایل csvمیده تا اسامی رو داشته باشه لینکشو میذارم دوست داشتید استفاده کنید و خیلی خوشحال میشم اگر فیچری هم مد نظرتون هست بهش اضافه کنم https://github.com/iamir4g/raffleBot @DevTwitter | <Amir Farahani/>

چطور فشار روی cpu رو محاسبه می کنیم ؟؟ یه مفهومی به اسم load داریم که با دستور uptime و یا مستقیم از /proc/loadavg میشه اون ر
چطور فشار روی cpu رو محاسبه می کنیم ؟؟ یه مفهومی به اسم load داریم که با دستور uptime و یا مستقیم از /proc/loadavg میشه اون رو دید توی لینوکس 3 نوع load رو گزارش میده به ترتیب از چپ در یک دقیقه اخیر، پنج دقیقه اخیر و پانزده دقیقه اخیر اما این load چیه؟ فرض کنین یه cpu یک هسته ای داریم load اگه صفر باشه یعنی cpu بیکاره و تا عدد 1 میزان کار اون رو نشون میده. اگه عدد بیشتر از 1 باشه مثلا 1.65 یعنی cpu مقدار 65% از کاراش توی صف هستند و اگه 5.5 باشه یعنی 450% از کار هاش توی صف هستند. اما کامپیوتر های الان cpu های بیش از یه هسته دارن مثلا برای یه cpu هشت هسته ای اگه load avg برابر 12 باشه 50% کار ها در صف هستن و اگه زیر 8 باشه یعنی هیچ کار در صفی نداره (درواقع load رو باید بر تعداد هسته ها تقسیم کرد) مثل تصویر میتونین با دستور lscpu اطلاعات cpu خودتون رو بدست بیارین عکس یه cpu چهار هسته ای رو نشون میده که هشتا ترد داره (از دید کامپیوتر ترد ها هرکدام مانند یک cpu جدا هستن پس ملاک ما عدد 8 هست نه 4، انگار این کامپوتر هشتا cpu داره ) @DevTwitter | <Mahdi Bagheri/>

اگه کارتون به زمان‌بندی، برنامه‌ریزی یا بهینه‌سازی گیر کرده… Google OR-Tools می‌تونه ناجی‌تون باشه! یک کتابخونه‌ی متن‌باز از گوگله که برای حل مسائل سختی مثل: - زمان‌بندی شیفت‌ها - برنامه‌ریزی تولید - تخصیص منابع - طراحی مسیرهای بهینه (TSP/VRP) خیلی عالی جواب می‌ده. چیزی که جذابش می‌کنه CP-SAT Solverشه؛ هم سریع کار می‌کنه هم با مسائل پیچیده راحت کنار میاد. چرا سراغش برید؟ - وقتی چندتا کار، چندتا محدودیت و چندتا آدم/ماشین دارید و نمی‌دونید چطور همه رو هماهنگ کنید - وقتی می‌خواید بهترین برنامه ممکن رو با کمترین خطا و بیشترین بازده داشته باشید - وقتی داده‌محور تصمیم می‌گیرید و دنبال راه‌حل «بهینه» هستید رایگانه، با Python خیلی راحت کار می‌کنه و برای پروژه‌های واقعی هم کاملاً کاربردیه. اگر تجربه‌اش رو داشتید یا سوالی دارید خوشحال می‌شم گپ بزنیم اگه خواستید یادش بگیرید این یه منبع خوبه: https://d-krupke.github.io/cpsat-primer/00_intro.html ORTools Optimization Scheduling Google Python OperationsResearch @DevTwitter | <Ali Baghernia/>

پروژه چت بات با Next.js و مدل Groq سلام دوستان! مدتی بود دوست داشتم از دید ریکت و نکست دقیق‌تر بفهمم ارتباط اپ‌های وب با مدل‌
پروژه چت بات با Next.js و مدل Groq سلام دوستان! مدتی بود دوست داشتم از دید ریکت و نکست دقیق‌تر بفهمم ارتباط اپ‌های وب با مدل‌های هوش مصنوعی چطور برقرار میشه؛ مخصوصاً بحث Streaming response که تجربه‌ی کاربر رو شبیه ChatGPT می‌کنه. برای تمرین، یه چت‌بات ساده ساختم با: Next.js (App Router) AI SDK Groq API مدل llama-3.1-8b-instant نتیجه یه دمو‌ی آنلاین سبک و سریع شد که latency خیلی کمی داره لینک آنلاین: https://next-chatbot-beta.vercel.app/ لینک ریپازیتوری: https://github.com/Reza-Rayan/next-chatbot یادتون باشه موقع استفاده حتما VPN رو روشن کنید. @DevTwitter | <Reza ‌Hosseinzade/>

بهترین روش‌های طراحی REST API طراحی REST API به نظر ساده میاد، اما نکات ریز و مهمی داره که باید رعایت کنیم. معمولا اشتباهاتی در طراحی API مرتکب میشیم که شامل این 5 مورده: 1- استفاده از فعل در آدرس URL آدرس باید فقط «منبع» (اسم) باشه، نه «عمل» (فعل). عمل رو خود متد HTTP مشخص می‌کنه.
 GET /getAllBooks
 POST /createNewBook
 GET /books
 POST /books
2- استفاده نادرست از متدهای HTTP متد درست باعث می‌شه API خودبه‌خود قابل فهم باشه: متد GET گرفتن داده متد POST ساختن منبع جدید متد PUT جایگزینی کامل یک منبع متد PATCH ویرایش جزئی یک منبع متد DELETE حذف منبع 3- برنگردوندن کد وضعیت مناسب کلاینت نباید مجبور بشه بدنه پاسخ رو پارس کنه تا بفهمه چی شده. همیشه 200 OK برگردوندن پاسخ 200 OK برای GET و PUT موفق پاسخ 201 Created وقتی با POST منبع جدید ساخته شد پاسخ 204 No Content وقتی با DELETE چیزی حذف شد پاسخ 404 Not Found وقتی منبع پیدا نشد 400, 401, 403, 429, 500 و … در مواقع لازم 4- نام‌گذاری ناسازگار همه جا یک شکل باشه گاهی /book/123 گاهی /authors همیشه جمع بساز: /books/123 ، /authors ، /orders 5- فراموش کردن صفحه‌بندی (Pagination) برگردوندن همه رکوردها در یک درخواست دروافع فاجعه عملکردیه برگردوندن ۱۰۰ هزار رکورد یه‌جا همیشه صفحه‌بندی داشته باش: ?page=3&limit=50 @DevTwitter | <Amir Rahimi Nejad/>

چرا pnpm, بهتر از npm عمل می‌کنه چند وقت پیش برای اولین بار که از pnpm استفاده میکردم (با سرعت نت همیشگی)، فر خوردم از سرعت نصب پکیج و این سوال برام پیش اومد که چرا؟؟؟ حالا ماجرا چیه؟ خب، npm همون مدیر بستهٔ کلاسیکِ Node هستش. ساده، همه‌کاره، ولی هر پروژه یه کپی از بسته‌ها توی node_modules نگه می‌داره — فضای دیسک زیاد و بعضاً نصب‌های کند. جدیدترها هم بهتر شدن ولی هنوز محدودیت دارن ولی pnpm, یک سبک دیگه داره. بسته‌ها رو توی یک مخزن مرکزی (content-addressable store) ذخیره می‌کنه و داخل پروژه فقط لینک (hardlink/symlink) می‌سازه. یعنی: کمتر تکرار، نصب سریع‌تر، و استفادهٔ خیلی بهینه از دیسک یعنی یه بار نصب و ذخیره می‌کنه توی سیستم مرکزی خودش و یه لینک میزاره برای استفاده های بعدی. خب حالا مزیت هاش چیه؟ 1. سرعتِ نصب بیشتر — چون فایل‌هاو دوباره دانلود نمی‌کنه، وقتتو نمی‌سوزونه. 2. صرفه‌جویی در فضا — یک بسته فقط یک‌بار ذخیره می‌شه، نه هزار بار توی هر پروژه. 3. سخت‌گیری روی وابستگی‌ها = باگ کمتر — pnpm ساختار غیر‌فلت node_modules داره؛ یعنی اگر پکیجی به‌طور مستقیم به یه بسته نیاز داره ولی اون رو در package.json اعلام نکردی، خطا می‌ده — خیلی وقتا نجات‌دهنده‌ست. 4. حمایت بهتر از monorepo/Workspaces — تو تیم و پروژه‌های چندپکیجه‌ای خیلی راحت‌تر کار می‌کنه. سازگاری با اکوسیستم npm — از رجیستری npm استفاده می‌کنه، اسکریپت‌ها و package.json تغییر زیادی نیاز ندارن. (این خیلی خفنه ) اگه فقط یکی دو تا پروژه کوچیک داری و با npm راحتی — همون بمونه. ولی اگه می‌خوای سرعت بیاد بالا، فضا کمتر مصرف بشه یا پروژه‌ت چندپکیجه‌ای/تیمی باشه، pnpm واقعاً بهت حال می‌ده. @DevTwitter | <Mohammad Ghiasi/>