hihtml؛ چاقوی همهکارهٔ کیفیت HTML
خلاصهٔ کاملتر
تو مستندات پروژه اومده که hihtml — کوتاهشدهٔ «HTML باکیفیت» — چهار کار جدا رو زیر یه ابزار واحد جمع کرده: اعتبارسنجی مارکآپ با HTML-validate، پیدا کردن تگها و ویژگیهای منسوخ با ObsoHTML، بررسی لینکهای خارجی با ماژولهای داخلی http/https نود، و فشردهسازی با HTML Minifier Next. پیشفرضهاش سختگیرانهست ولی همهچیز قابل تنظیمه.
بدون هیچ فلگی، hihtml فایلهای HTML پوشهٔ فعلی رو اعتبارسنجی میکنه و دنبال مارکآپ منسوخ میگرده. -c فقط بررسی کد رو انجام میده، -l سراغ لینکهای خراب میره و -m فایلها رو درجا یا توی پوشهٔ خروجی مینیفای میکنه. جالبترینشون -a هست: اول کد و لینکها رو چک میکنه و فقط اگه خطای اعتبارسنجی نبود مینیفای رو انجام میده — یهجور دروازهٔ کیفیت داخلی.
npx hihtml
npx hihtml -c -i path/to/project
npx hihtml -m -i src -o dist
npx hihtml -aکنار CLI یه API برنامهنویسی هم هست: collect برای جمع کردن بازگشتی فایلها، checkCode، checkLinks و minify، بهعلاوهٔ نسخههای رشتهای مثل checkCodeString و minifyString که بدون خوندن و نوشتن فایل مستقیم روی رشتهٔ HTML کار میکنن — مناسب پایپلاینهای محتوا مثل Eleventy یا رندر سمت سرور. تنظیمات هم از hihtml.config.json یا کلید hihtml توی package.json خونده میشه و اولی بر دومی اولویت داره.
برای CI هم فکر شده: کد خروج 0 یعنی مشکلی نیست، 1 یعنی خطای اعتبارسنجی یا لینک خراب یا خطای مینیفای، و 2 یعنی خطای خود ابزار. فلگ -q وقتی همهچیز تمیزه جلوی خروجی اضافه رو میگیره و -r یه گزارش JSON ذخیره میکنه. نویسنده میگه ObsoHTML فعلاً چندتا المان و ویژگی رو میگیره که HTML-validate هنوز پوشش نداده، ولی صرفاً اطلاعرسانیه و جلوی مینیفای رو نمیگیره — و بهمحض اینکه HTML-validate همهشو پوشش بده، از hihtml حذف میشه.
نکات کلیدی:
- چهار ابزار کیفیت HTML زیر یه CLI واحد، با اجرای بدون نصب از طریق npx
- فلگ -a بهعنوان دروازهٔ کیفیت: مینیفای فقط بعد از اعتبارسنجی موفق
- API برنامهنویسی با نسخههای رشتهای برای پایپلاینهای محتوا و SSR
- پیکربندی از hihtml.config.json یا کلید hihtml در package.json
- کدهای خروج مشخص و فلگ -q برای استفادهٔ راحت توی CI




