TGViewer
DevTwitter | توییت برنامه نویسی DevTwitter | توییت برنامه نویسی @devtwitter · 32.2K subscribers
Post #13238 6.29K
سال‌هاست توی پروژه‌های فرانت‌اند، تقریباً همه‌مون با این ترکیب کار کرده‌ایم:
یک ابزار برای پیدا کردن مشکل‌های کد (ESLint)
یک ابزار برای فرمت کردن کد (Prettier)

ترکیب خوبیه؛ ولی هرچی پروژه بزرگ‌تر و وابستگی‌ها بیشتر میشن، هزینه‌ی اجرای این ابزارها هم بیشتر خودش رو نشون میده.

دقیقاً همین‌جاست که Biome وارد بازی میشه.
این ابزار با زبان Rust نوشته شده و از همون اول با هدف سرعت بالا و یکپارچه‌سازی ابزارهای Code Quality ساخته شده. یعنی به‌جای اینکه چند ابزار مختلف رو برای Lint، Format و مدیریت تنظیمات کنار هم بچینیم، میتونیم بخش قابل‌توجهی از این کارها رو با یک ابزار انجام بدیم.

اما چرا Biome این‌قدر مورد توجه قرار گرفته؟

-️ از نظر Performance: به‌دلیل معماری و پیاده‌سازی Rust، در پروژه‌های بزرگ میتونه زمان اجرای Lint و Format رو به شکل محسوسی کاهش بده؛ مخصوصاً وقتی این فرآیندها مرتباً در Editor یا CI اجرا میشن.

- از نظر Configuration: دیگه لازم نیست برای هماهنگ کردن چند ابزار و تعداد زیادی Plugin و Config، چندین لایه تنظیمات داشته باشیم.

- از نظر یکپارچگی: Linting و Formatting در یک اکوسیستم انجام میشن و همین موضوع میتونه تعداد ابزارها و وابستگی‌های پروژه رو کمتر کنه.

- از نکات فنی جالبش اینه که در نسخه‌های جدیدتر (سری ۲.x)، قابلیت Type-aware Linting رو بدون نیاز به اجرای کامل TypeScript Compiler ارائه میده؛ چیزی که قبلاً بین ابزارهای Lint جاوااسکریپتی کم‌سابقه بود.

-️ برای پروژه‌های React، TypeScript، Next.js و حتی Monorepoها هم، Biome میتونه یک گزینه‌ی جدی برای جایگزینی بخشی از Toolchain قدیمی باشه.

البته این به معنی این نیست که ESLint و Prettier دیگه به درد نمیخورن.
اکوسیستم ESLint هنوز بسیار بزرگه و Pluginهای زیادی داره؛ مثلاً بعضی قوانین خاص eslint-plugin-import هنوز معادل کاملی توی Biome ندارن و ممکنه در پروژه‌های خاص بهشون نیاز داشته باشید.
همین‌طور فرمت‌دهی Biome حدود ۹۷٪ با Prettier سازگاره، نه صددرصد؛ یعنی موقع مهاجرت ممکنه یه سری Diff جزئی رو ببینید، هرچند در عمل تأثیر چندانی روی کدبیس نداره.

شاید وقتش رسیده Toolchain فرانت‌اند رو کمی ساده‌تر کنیم.

@DevTwitter | <Pouya Bakhshi/>
  • 👎 19
  • ❤ 12
  • 👍 6
More from @devtwitter
  1. Sep 27, 2026رده بندی محبوبیت زبانهای برنامه نویسی در سپتامبر 2026 تقدیم به نگاه شما عزیزان... این رده…
  2. Sep 27, 2026اگه از opencode یا هر harness دیگه ای استفاده میکنید، احتمال این که مدل LLM زرنگ بازی در ب…
  3. Sep 27, 2026یک چند وقت پیش یک مدل ساختم به اسم xiq مخصوصا پیدا کردن مشکلات اپتدایی امنیت کد. اگه توهم…
  4. Sep 26, 2026من از کودکی همیشه از کار با TUIها شگفت‌زده می‌شدم. این claude-cli هم همیشه برام جالب بوده…
  5. Sep 26, 2026این پروژه یه سرویس کامل برای راه‌اندازی Meet و Webinar. میتونی پلن های مختلف با محدودیت ها…
  6. Sep 26, 2026🔥 بین مدل ML و یه محصول واقعی، یه مسیر مهم وجود داره: MLOps. ✔️ ساختن یه مدل خوب تازه شرو…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →