في عالم يفقد السيطرة 🌀 عالم البرمجة لك

borma logo
person

لما تيجي تشتغل على أي مشروع حقيقي، حجم الـ CSS بيبقى حاجة أساسية لازم تركز عليها. مش منطقي أبداً تسيب الملف النهائي مليان كلاسات مش مستخدمة وتدي للمستخدم 100KB CSS وهو مش محتاج غير 10KB هنا ييجي دور تحسين الأداء في Tailwind.

المشكلة

بما إن Tailwind بيولد آلاف الكلاسات الجاهزة، الملف النهائي (قبل أي Optimization) ممكن يوصل ميجات من الكود. وده هيخلي:

  • الـ Loading أبطأ.
  • الـ Performance في Lighthouse ضعيف
  • تجربة المستخدم مش سلسة

✅ الحل: Tree-Shaking (PurgeCSS)   

الفكرة ببساطة:

  • دور على كل الكلاسات اللي مستخدمة فعلاً في المشروع
  • واحذف الباقي (Unused CSS)

Tailwind بيعمل ده أوتوماتيك عن طريق PurgeCSS (مدموج معاه من النسخة 2.0 تقريبًا)

 

طريقة التفعيل  

في ملف tailwind.config.js:

  • البروب content هي أهم حاجة
  • بتقول لتايلويند: “ابحث في الملفات دي عن الكلاسات اللي مستخدمة”
  • أي حاجة مش مستخدمة = تتشال من الـ bundle النهائي

مثال عملي  

لو كتبت في المشروع:

الـ CSS النهائي هيحتوي بس على:

وبس كده باقي آلاف الكلاسات مش هتنزل للـ browser.

كدا حجم ال CSS ممكن ينزل من 3MB ل 10KB, والـ First Load هيبقى أسرع, والمشروع هيجيب Score عالي في Lighthouse

 

💡 Tips 

  • اتأكد إنك كاتب المسارات في content صح (لو نسيت فولدر الكلاسات فيه مش هتتضمن)
  • لو بتولد كلاسات دايناميك (مثلاtext-${color}) لازم تستخدم Safelist عشان PurgeCSS ميحذفهاش
  • دايما جرب الـ Build النهائي (npm run build) عشان تشوف الحجم بعد الـ Optimization

 

قسم التعليقات