التثبيت

ثبّت، وغلّف تطبيقك، وتحكّم بكل رمز تصميمي.

أضِف ثلاث حزم، واستورد الأنماط مرة واحدة، وضَع تطبيقك داخل المزوّد. ثم اضبط النظام بأكمله - اللون الرئيس والاستدارة والخطوط والوضع الداكن والاتجاه - من طبقة واحدة من متغيّرات CSS.

المتطلّبات

يستهدف dev-dga إصدارات React الحديثة وأي أداة بناء تستطيع استيراد ملف CSS.

React 19

حزمتا react وreact-dom بإصدار 19 اعتماديّتان قرينتان - تستخدم المكوّنات بيئة تشغيل React 19.

أداة بناء تدعم CSS

Next.js أو Vite أو Remix - أي إعداد يتيح استيراد ملف أنماط. لا تُستخدم أي بيئة CSS-in-JS.

TypeScript (اختياري)

الأنواع الكاملة تُشحَن مع الحزمة. TypeScript مُستحسَن لكنه غير مطلوب.

ثبّت الحزم

ثلاث حزم: مكوّنات React، وملف CSS المُجمَّع، والرموز التصميمية. ثبّتها الثلاث معًا.

npm i @dev-dga/react @dev-dga/css @dev-dga/tokens

حزمة CSS اعتماديّة قرينة لحزمة React - ثبّتها صراحةً، لا اعتمادًا على التبعية غير المباشرة.

استورد الأنماط مرة واحدة

استورد ملف الأنماط مرة واحدة في جذر التطبيق (في التخطيط الجذري أو ملف الدخول). يشحن التصفير والرموز والسمة الداكنة وكل أنماط المكوّنات.

// app/layout.tsx (Next.js) or your entry fileimport '@dev-dga/css';

لأن نظام التصميم يعيش في @layer ddga-base / ddga-components، فأي قاعدة غير مُطبَّقة في طبقة عندك تتجاوزه دون الحاجة إلى !important .

ضَع تطبيقك داخل المزوّد

يوفّر DgaProvider الاتجاه والوضع الداكن وسمة العلامة وجذر الإرساء الذي تُرسى فيه الطبقات المنبثقة (الحوارات والتلميحات والإشعارات). ضَعه مرة واحدة قرب الجذر فوق كل ما يستخدم المكتبة.

import { DgaProvider } from '@dev-dga/react';import '@dev-dga/css';export default function App({ children }) {  return (    <DgaProvider dir="rtl" mode="light" theme={{ primary: 'saGreen' }}>      {children}    </DgaProvider>  );}

خصائص DgaProvider

الخاصيةالنوعالافتراضيما تتحكّم به
dir'ltr' | 'rtl''ltr'اتجاه التخطيط. يعكس الشجرة كاملةً عبر الخصائص المنطقية.
mode'light' | 'dark''light'وضع الألوان. يطبّق مجموعة الرموز الداكنة على جذر المزوّد.
themeDgaThemesaGreenسمة العلامة - اسم لوحة، أو لون CSS، أو ثلاثية كاملة.
localestring-لغة بصيغة BCP-47 تُمرَّر للمكوّنات المدركة للتواريخ والأرقام.
asElementType'div'العنصر الذي يُصيَّر المزوّد به (مثل التصيير على <body>).

نسّق اللون الرئيس

يتبدّل النظام بأكمله من قيمة واحدة. مرّر theme.primary بأيٍّ من ثلاث صيغ - وتُشتقّ حالات التمرير والضغط تلقائيًا عبر color-mix().

  1. اسم لوحة جاهزة

    إحدى: saGreen أو info أو success أو warning أو error أو gray.

  2. أي لون CSS

    قيمة hex أو rgb أو oklch. وتُشتقّ حالتا التمرير والضغط نيابةً عنك.

  3. ثلاثية صريحة

    تحكّم كامل عبر { base, hover, active, foreground } حين تحتاج قيمًا محدّدة.

// 1 - a built-in palette name<DgaProvider theme={{ primary: 'info' }}>…</DgaProvider><DgaProvider theme={{ primary: '#7C3AED' }}>…</DgaProvider><DgaProvider  theme={{    primary: {      base: '#1B8354',      hover: '#166A45',      active: '#104631',      foreground: '#FFFFFF',    },  }}></DgaProvider>

تجاوز أي رمز تصميمي

كل لون واستدارة ومسافة وخط وظل هو متغيّر CSS باسم --ddga-* مُعرَّف في @layer ddga-base. أعِد تعريف أيٍّ منها في أي مكان - عامًّا على :root أو محصورًا في شجرة فرعية - فيتبعه النظام. دون خطوة بناء ودون Sass.

مجموعات الرموز

المجموعةأمثلة على المتغيّراتما تتحكّم به
الألوان--ddga-color-primary · --ddga-color-background · --ddga-text-primary · --ddga-color-borderالأسطح والنصوص والحدود والألوان الدلالية.
الاستدارة--ddga-radius-sm · --ddga-radius-md · --ddga-radius-lg · --ddga-radius-fullاستدارة الزوايا عبر كل مكوّن.
المسافات--ddga-space-1 … --ddga-space-16مقياس المسافات المُستخدَم للحشو والفجوات.
الخطوط--ddga-font-ar · --ddga-font-mono · --ddga-font-size-* · --ddga-font-weight-*عائلات الخطوط وأحجامها وأوزانها.
الظلال--ddga-shadow-xs … --ddga-shadow-3xlالارتفاع للبطاقات والطبقات المنبثقة والنوافذ.
الرسوم--ddga-chart-1 … --ddga-chart-6اللوحة التصنيفية لتمثيل البيانات.
/* your globals.css - imported AFTER '@dev-dga/css' */:root {  --ddga-radius-md: 4px;          /* squarer corners, system-wide */  --ddga-color-primary: #0f766e;  /* teal brand */  --ddga-font-ar: 'Cairo', sans-serif;}.compact {  --ddga-card-padding: var(--ddga-space-3);  --ddga-radius-lg: 6px;}

احصر التجاوزات في شجرة فرعية بضبط المتغيّرات على أي عنصر مُغلِّف - ويتكفّل التتالي بالباقي، في الوضعين الفاتح والداكن.

باني السمة

لمحة سريعة - عدّل بعض الرموز وشاهد المعاينة تتبدّل. للتحكّم الكامل بكل الرموز الـ188، افتح منسّق السمة الكامل.

معاينة مباشرة

إعدادات الحساب

تحكّم بطريقة ظهور ملفّك عبر كل خدمة حكومية.

جديد
مُعتمَدجديدالمزيد

تُحفَظ تغييراتك تلقائيًا.

عناصر سريعة

هذه معاينة. يمنحك منسّق السمة كل رمز --ddga-* - كل سلالم الألوان والاستدارة والمسافات والخطوط والظلال - مع بحث حيّ وتصدير بنقرة.

افتح منسّق السمة الكامل

القيم التي غيّرتها

الصقها في ملف CSS يُحمَّل بعد @dev-dga/css (في globals.css مثلًا). تتجاوز الرموز التي تقرؤها كل المكوّنات - ضعها على :root للتطبيق كاملًا، أو على أي عنصر لتنسيق شجرة فرعية. لا يظهر هنا إلا ما تغيّره.

globals.css
@import '@dev-dga/css'; /* the DGA design system (index.css) - load it first */:root {  /* غيّر أي عنصر تحكّم أدناه لتوليد تجاوزات الرموز */}

الوضع الداكن

الوضع الداكن مجموعة رموز مُنتقاة بعناية، لا عكسٌ آليّ. فعِّله بخاصية mode في المزوّد، أو بتبديل data-theme="dark" على عنصر مُغلِّف. طبّقه قبل أول رسم (كما يفعل هذا الموقع) لتفادي الوميض.

// Controlled by the provider<DgaProvider mode="dark">…</DgaProvider><div data-theme="dark"></div>

العربية والاتجاه

اضبط dir="rtl" فينعكس التخطيط بالكامل عبر الخصائص المنطقية - دون عملٍ لكل مكوّن. ويغطّي خط IBM Plex Sans Arabic العربية واللاتينية من عائلة واحدة، فيبقى المحتوى المختلط متّسقًا.

<DgaProvider dir="rtl" locale="ar"></DgaProvider>

الخطوات التالية

اكتمل إعدادك. إلى أين تذهب من هنا: