0Pricing
React Academy · درس

Style Dictionary: تحويل الرموز وإنشاؤها

اضبط Style Dictionary لتحويل ملفات الرموز الخام إلى متغيرات CSS وثوابت JS وإعدادات Tailwind

Style Dictionary: تحويل الرموز وإنشاؤها درس مجاني في React Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في React Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة React Academy 4 دروس في المجموع.

ما هي Style Dictionary

Style Dictionary هي أداة بناء، أنشأتها Amazon، تأخذ تعريفات رموز التصميم بتنسيق JSON وتُخرجها بأي تنسيق مستهدف: خصائص CSS المخصّصة، ووحدات JavaScript ES، ومتغيرات Sass، وثوابت iOS بلغة Swift، وموارد Android بصيغة XML، وأي تنسيق مخصّص تحدده. مصدر واحد للحقيقة، ومخرجات متعددة.

التثبيت والتهيئة

ثبّت الحزمة باستخدام npm install --save-dev style-dictionary. وابدأ بهيكل المشروع باستخدام npx style-dictionary init، الذي ينشئ config.json (أو config.js) ودليل tokens/. ويحدد ملف الإعدادات مكان العثور على ملفات الرموز ومكان كتابة المخرجات.

تنسيق JSON للرموز

تستخدم Style Dictionary بنية JSON متداخلة تكون للعُقد الطرفية فيها خاصية value. على سبيل المثال: { "color": { "primary": { "500": { "value": "#3b82f6" } } } }. ويصبح المسار إلى القيمة (color, primary, 500) اسم الرمز بعد التحويل، ويُنسّق عادةً على شكل color-primary-500 أو --color-primary-500.

تشغيل عملية البناء

شغّل npx style-dictionary build --config config.json (أو style-dictionary build إذا أعددته ضمن scripts في package.json). تقرأ Style Dictionary جميع ملفات الرموز من المصدر المُعدّ، وتطبّق التحويلات، ثم تكتب المخرجات في الوجهات المُعدّة. ويُبلّغ عن أخطاء تنسيق الرموز مع اسم الملف والمسار.

تعريف منصات الإخراج

يعرّف config.json المنصات: css (يُخرج ملف CSS يتضمن خصائص مخصّصة)، وjs (يُخرج كائن JS)، وscss (يُخرج متغيرات Sass). وتحدد كل منصة دليل الإخراج، واسم الملف، والتنسيق (القالب)، والتحويلات (دوال معالجة الاسم والقيمة) التي يجب تطبيقها.

التحويلات المضمّنة

تتضمن Style Dictionary تحويلات مضمّنة: يحوّل name/cti/kebab المسار المتداخل إلى color-primary-500، وينتج name/cti/camel القيمة colorPrimary500، ويحوّل size/rem قيم البكسل إلى rem، ويوحّد color/hex الألوان بتنسيق hex. ويمكن تركيب التحويلات، كما تُطبّق بالترتيب.

تسجيل تحويلات مخصّصة

يمكنك تسجيل تحويلات مخصّصة باستخدام StyleDictionary.registerTransform(). فمثلًا، يمكنك إنشاء تحويل يحوّل قيم البكسل إلى نقاط iOS، أو تحويل يضيف بادئة خاصة بالشركة إلى جميع أسماء الرموز. تمنحك التحويلات المخصّصة تحكمًا كاملًا في طريقة معالجة القيم قبل إخراجها.

تسجيل تنسيقات مخصّصة

تحدد التنسيقات المخصّصة قالب ملف الإخراج. تستقبل StyleDictionary.registerFormat() قاموس الرموز المحوّلة وتُعيد سلسلة نصية تمثل محتوى الملف. ويمكنك إخراج الرموز على شكل أنواع TypeScript، أو كائن سمة لـ React، أو امتداد لإعدادات Tailwind، أو أي تنسيق آخر يتطلبه المكدس التقني لديك.

دمج الإخراج في React

بعد البناء، استورد مخرجات CSS في ورقة الأنماط العامة: @import './tokens/tokens.css'. واستورد مخرجات JS في المكوّنات أو إعدادات Tailwind: import tokens from './tokens/tokens.js'. تمنحك CSS خصائص مخصّصة لتطبيق السمات أثناء التشغيل، بينما تمنحك JS ثوابت ذات أنواع لاستخدامها مع Tailwind ومنطق JavaScript.

مراجع الرموز والأسماء المستعارة

تدعم Style Dictionary مراجع الرموز باستخدام الأقواس المعقوفة: { "value": "{color.primary.500}" }. وينشئ ذلك أسماء مستعارة لرموز دلالية؛ إذ يشير الرمز الدلالي إلى رمز أولي. وأثناء البناء، تحل Style Dictionary المراجع وتُخرج القيمة النهائية المحلولة (أو مرجعًا إلى متغير CSS، وفقًا للتنسيق المستخدم).

الأتمتة باستخدام prebuild

شغّل Style Dictionary باعتبارها نصًا برمجيًا من نوع prebuild في npm، حتى تُعاد توليد الرموز دائمًا قبل بناء التطبيق. أضف "prebuild": "style-dictionary build" إلى package.json. ويضمن ذلك انعكاس أي تغيير في ملفات JSON الخاصة بالرموز على مخرجات CSS وJS قبل أن تعالجها عملية بناء React.

تحويل Style Dictionary

ما الغرض من التحويلات في Style Dictionary؟

مراجعة الدرس

تحوّل Style Dictionary ملفات JSON للرموز إلى أي تنسيق إخراج: متغيرات CSS، ووحدات JS، وSass، وiOS، وAndroid. تستخدم ملفات JSON للرموز كائنات متداخلة تتضمن عُقدًا طرفية بخاصية value. وتعالج التحويلات الأسماء والقيم (مثل camelCase والتحويل من px إلى rem)، بينما تحدد التنسيقات قالب الإخراج. وتتيح مراجع الرموز ({color.primary.500}) إنشاء أسماء مستعارة دلالية. ويمكنك أتمتة العملية باستخدام نص برمجي من نوع prebuild لضمان تحديث الرموز دائمًا قبل بناء React.

الأسئلة الشائعة

هل درس «Style Dictionary: تحويل الرموز وإنشاؤها» مجاني؟

نعم — نص درس «Style Dictionary: تحويل الرموز وإنشاؤها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة React Academy، انتقل إلى CoddyKit PRO. تتضمن دورة React Academy 4 دروس في المجموع.

ماذا ستتعلم في «Style Dictionary: تحويل الرموز وإنشاؤها»؟

اضبط Style Dictionary لتحويل ملفات الرموز الخام إلى متغيرات CSS وثوابت JS وإعدادات Tailwind تتمرن على React Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ React Academy؟

لا تُشترط خبرة سابقة. React Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «Style Dictionary: تحويل الرموز وإنشاؤها»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس React Academy هذا؟

نعم. كل درس في React Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ما رموز التصميم ولماذا تهم؟
  2. Style Dictionary: تحويل الرموز وإنشاؤها
  3. الرموز في Tailwind ومتغيرات CSS وCSS-in-JS
  4. بنية رموز متعددة السمات والعلامات التجارية
← العودة إلى React Academy