unjs/unplugin
چه کاری انجام میده؟
این یک سیستم یکپارچه برای ایجاد پلاگینهایی است که میتونن در چندین ابزار ساخت (build tools) مثل Vite، Rollup، Webpack، esbuild و Rolldown استفاده بشن. یعنی بدون نیاز به نوشتن کدهای جداگانه برای هر ابزار، یک پلاگین واحد میتونه در تمام این فریمورکها کار کنه.
کاربرد:
توسعهدهندگان میتونن با استفاده از این پروژه، پلاگینهای قابل حمل بنویسن که در محیطهای مختلف کار میکنن. این موضوع زمان و تلاش رو کم میکنه و توسعه رو سریعتر میکنه.
در چه شرایطی بهتره استفاده شود؟
وقتی میخوای یک قابلیت (مثل ترانسپایل کد، جایگزینی متغیرها، یا پردازش فایلها) رو در چندین ابزار ساخت پیادهسازی کنی، به جای نوشتن چند نسخه مختلف، از unplugin استفاده کن. بهترین حالت استفاده وقتیه که پروژهات در چند محیط مختلف بیلد میشه یا میخوای یک پکیج اوپنسورس بنویسی که با ابزارهای مختلف سازگار باشه. ️
چند مثال از موارد استفاده:
افزودن یک پرپروسسور CSS که در Vite و Webpack همزمان کار میکنه
ایجاد پلاگینی که متغیرهای محیطی رو جایگزین کنه بدون توجه به ابزار بیلد
پیادهسازی یک سیستم لوگینگ یا مانیتورینگ در فرآیند کامپایل برای چندین فریمورک
توسعه یک پکیج NPM که به راحتی با هر ابزار ساختی کار میکنه
- ##unified
- ##build
- ##vite
- ##rollup
- ##webpack
- ##esbuild
- ##developer
- ##javascript
- ##typescript
- ##unjs
