الدليل الكامل لمخططات Mermaid

تعلّم إنشاء مخططات احترافية باستخدام صياغة نصية بسيطة

إعلان

ما هو Mermaid؟

Mermaid أداة للرسم التخطيطي والرسوم البيانية مبنية على JavaScript تستخدم تعريفات نصية مستوحاة من Markdown لإنشاء المخططات وتعديلها ديناميكيًا. وهو مشروع مفتوح المصدر يتيح لك توليد مخططات من أوصاف نصية بسيطة.

بدلاً من أدوات الرسم المعقدة، تكتب صياغة تشبه الكود تصف مخططك، ويقوم Mermaid بعرضه كمخطط مرئي. هذا النهج يجعل المخططات قابلة لإدارة الإصدارات وسهلة التحديث ومثالية للتوثيق.

يتكامل Mermaid بسلاسة مع منصات التوثيق والويكي وملفات Markdown، مما يجعله أداة مفضلة لدى المطورين والكتّاب التقنيين.

لماذا تستخدم Mermaid؟

  • إدارة الإصدارات: المخططات ملفات نصية، لذا يمكن تتبعها في Git إلى جانب الكود
  • تحديثات سريعة: غيّر بضعة أسطر نصية بدلاً من إعادة رسم المخططات كاملة
  • اتساق: يتولى Mermaid التخطيط والتنسيق تلقائيًا ليضمن مخططات متسقة
  • لا حاجة لأدوات تصميم: لا حاجة إلى Visio أو Lucidchart أو أدوات مكلفة أخرى
  • التوثيق ككود: احتفظ بالمخططات في نفس المستودع مع التوثيق
  • متعدد المنصات: يعمل في المتصفحات وNode.js ويتكامل مع العديد من المنصات
  • مجاني ومفتوح المصدر: بلا تكاليف ترخيص ومجتمع نشط
  • أنواع متعددة من المخططات: يدعم المخططات الانسيابية ومخططات التسلسل ومخططات الفئات وغيرها
إعلان

أنواع المخططات المدعومة

يدعم Mermaid مجموعة واسعة من أنواع المخططات لتلبية احتياجات التوثيق المختلفة:

مخطط انسيابي

تصوّر سير العمل والعمليات وأشجار القرار باستخدام العقد والحواف.

flowchart TD
    A[Start] --> B{Decision}
    B -->|Yes| C[Process]
    B -->|No| D[Alternative]
    C --> E[End]
    D --> E

حالة الاستخدام: تدفقات العمليات، الخوارزميات، منطق اتخاذ القرار

مخطط تسلسل

يعرض التفاعلات بين الجهات أو الأنظمة المختلفة عبر الزمن.

sequenceDiagram
    participant User
    participant API
    participant DB
    User->>API: Request data
    API->>DB: Query
    DB-->>API: Results
    API-->>User: Response

حالة الاستخدام: تفاعلات API، تواصل الأنظمة، تدفقات المستخدمين

مخطط فئات

نمذج الأنظمة الكائنية باستخدام الفئات والسمات والعلاقات.

classDiagram
    class Animal {
        +String name
        +int age
        +makeSound()
    }
    class Dog {
        +bark()
    }
    Animal <|-- Dog

حالة الاستخدام: معمارية البرمجيات، تصميم OOP، مخططات قواعد البيانات

مخطط حالات

يمثّل الحالات والانتقالات في نظام أو عملية.

stateDiagram-v2
    [*] --> Idle
    Idle --> Loading: Start
    Loading --> Success: Complete
    Loading --> Error: Fail
    Success --> [*]
    Error --> Idle: Retry

حالة الاستخدام: آلات الحالات، إدارة دورة الحياة، حالات واجهة المستخدم

مخطط ER

نمذج هياكل قواعد البيانات والعلاقات بين الكيانات.

erDiagram
    CUSTOMER ||--o{ ORDER : places
    ORDER ||--|{ LINE_ITEM : contains
    CUSTOMER {
        int id
        string name
        string email
    }

حالة الاستخدام: تصميم قواعد البيانات، نمذجة البيانات، معمارية النظام

مخطط جانت

خطط لجدوال المشاريع وخطوطها الزمنية وتصورها.

gantt
    title Project Timeline
    dateFormat YYYY-MM-DD
    section Phase 1
    Design :a1, 2024-01-01, 30d
    Development :a2, after a1, 45d

حالة الاستخدام: تخطيط المشاريع، جداول السبرنت، خرائط الطريق

مخطط دائري

يعرض البيانات النسبية والنسب المئوية بصريًا.

pie title Distribution
    "Category A" : 42
    "Category B" : 30
    "Category C" : 28

حالة الاستخدام: نتائج الاستبيانات، الحصة السوقية، تخصيص الموارد

مخطط Git

تصوّر استراتيجيات تفرّع Git وسجل الالتزامات.

gitGraph
    commit
    branch develop
    checkout develop
    commit
    checkout main
    merge develop

حالة الاستخدام: توثيق سير عمل Git، استراتيجيات التفرّع

إعلان

البدء مع Mermaid

1

اختر نوع المخطط

ابدأ بتحديد نوع المخطط الأنسب لما تريد عرضه. يبدأ كل نوع بكلمة مفتاحية محددة مثل 'flowchart' أو 'sequenceDiagram' أو 'classDiagram'.

2

اكتب الصياغة النصية

استخدم صياغة Mermaid البسيطة لوصف مخططك. الصياغة بديهية وتُقرأ تقريبًا كلغة طبيعية. على سبيل المثال، 'A --> B' ينشئ سهمًا من A إلى B.

3

عاين المخطط

استخدم العارض عبر الإنترنت أو أي أداة متوافقة مع Mermaid لرؤية مخططك مُعالجًا في الوقت الحقيقي. عدّل حسب الحاجة حتى ترضى.

4

صدّر وشارك

صدّر مخططك بصيغة SVG أو PNG للاستخدام في العروض، أو شارك رابط URL مع فريقك. يمكنك أيضًا تضمين Mermaid مباشرة في ملفات Markdown.

أفضل الممارسات

  • حافظ على تركيز المخططات على مفهوم واحد أو سير عمل واحد
  • استخدم تسميات ذات معنى تصف منطق العمل الفعلي
  • قسّم المخططات المعقدة إلى مخططات أصغر مترابطة
  • أضف تعليقات باستخدام %% لشرح الأقسام المعقدة
  • استخدم اصطلاحات تسمية متسقة عبر مخططاتك
  • اختبر مخططاتك في البيئة المستهدفة قبل اعتمادها
  • أضف تلميحات الاتجاه (TD, LR) للتحكم في التخطيط عند الحاجة
  • استخدم subgraphs لتجميع العقد ذات الصلة في المخططات الانسيابية
  • استخدم خيارات التنسيق باعتدال للحفاظ على قابلية القراءة
  • قم بإدارة إصدارات ملفات مصدر المخططات مع كودك

حالات استخدام شائعة

توثيق البرمجيات

وثّق معمارية النظام وتدفقات API وتفاعلات المكونات إلى جانب كودك.

تخطيط المشاريع

أنشئ مخططات جانت لتخطيط السبرنت والجداول الزمنية للمشاريع وتخصيص الموارد.

مقترحات تقنية

تصوّر الحلول المقترحة وتصميمات الأنظمة والقرارات المعمارية.

رحلات المستخدم

ارسم خرائط تدفقات المستخدم وتجارب العملاء وأنماط التفاعل.

تصميم قواعد البيانات

نمذج علاقات الكيانات وبُنى المخطط واعتماديات البيانات.

توثيق العمليات

وثّق عمليات الأعمال وسير العمل والإجراءات التشغيلية القياسية.

مواد تعليمية

أنشئ مخططات واضحة مع التحكم بالإصدارات للدروس والدورات التقنية.

توثيق API

وضّح تدفقات الطلب/الاستجابة وتسلسلات المصادقة وتفاعلات نقاط النهاية.

موارد إضافية

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

أسئلة شائعة حول استخدام Mermaid Viewer وإنشاء المخططات

هل هذا المحرر مجاني فعلًا؟
نعم، مجاني بالكامل. يمكنك إنشاء عدد غير محدود من المخططات، والتصدير إلى SVG/PNG، والمشاركة عبر الرابط، واستخدام جميع الميزات دون تسجيل أو دفع. الأداة مدعومة بإعلانات غير مزعجة.
هل أحتاج إلى تثبيت أي شيء؟
لا، لا تحتاج إلى تثبيت أي شيء. هذه أداة ويب تعمل بالكامل داخل المتصفح. افتح الموقع وابدأ فوراً على الكمبيوتر أو الجهاز اللوحي أو الهاتف.
كيف أحفظ المخططات؟
يمكنك حفظ عملك بعدة طرق: 1) التصدير كـ SVG أو PNG، 2) المشاركة عبر URL حيث يتم ترميز الكود داخل الرابط، 3) نسخ كود Mermaid إلى ملفاتك، 4) رفع/تنزيل ملفات .mmd أو .mermaid.
هل يمكنني استخدام المخططات في التوثيق؟
بالتأكيد. صدّر مخططاتك بصيغة SVG (قابلة للتكبير) أو PNG واستخدمها في التوثيق أو العروض أو المواقع. ويمكنك أيضاً تضمين كود Mermaid مباشرة في منصات مثل GitHub وGitLab وNotion.
ما الفرق بين SVG وPNG؟
صيغة SVG متجهية وتحافظ على الجودة بأي حجم، لذا هي الأفضل للويب والتوثيق. أما PNG فهي نقطية ومناسبة للمشاركة السريعة لكنها تفقد الجودة عند تغيير الحجم.
لماذا لا يتم عرض المخطط؟
تحقق من أخطاء الصياغة في كود Mermaid. من الأخطاء الشائعة: علامات اقتباس غير مغلقة، نقطتان أو فاصلة منقوطة مفقودة، معرّفات عقد خاطئة، أو صياغة غير مدعومة. جرّب تبسيط المخطط لتحديد المشكلة.
هل يمكنني التعاون مع الآخرين؟
لا توجد ميزة تعاون لحظي مدمجة، لكن يمكنك مشاركة المخططات بسهولة عبر الرابط. يمكن للآخرين فتحها وتعديلها ثم مشاركة نسختهم. وطبيعة Mermaid النصية تجعلها مناسبة جداً للعمل مع Git.
هل يعمل بدون إنترنت؟
التحميل الأول يحتاج اتصالاً بالإنترنت. بعد ذلك، غالباً تعمل ميزات التحرير الأساسية بدون اتصال. لكن بعض الميزات مثل التصدير قد تحتاج اتصالاً.
كيف أتعلم صياغة Mermaid؟
ابدأ بدليل Mermaid الشامل لدينا الذي يغطي جميع أنواع المخططات مع أمثلة. استخدم القوالب للبداية السريعة، وارجع أيضاً إلى التوثيق الرسمي في mermaid.js.org.
هل يمكن تخصيص المظهر؟
نعم. تتبع المخططات سمة الموقع: بدّل بين الوضع الفاتح والداكن عبر زر السمة في الشريط العلوي، فيُعاد رسم المخطط بسمة Mermaid المطابقة. وللتخصيص المتقدم، استخدم توجيه %%{init:...}%% لتحديد الألوان والخطوط والخصائص البصرية الأخرى.
ما أنواع المخططات المدعومة؟
يدعم هذا المحرر الأنواع الرئيسية من مخططات Mermaid: Flowcharts، وSequence، وClass، وState، وER، وGantt، وPie، وGit Graphs، وUser Journey وغيرها.
هل بيانات المخطط خاصة؟
لا يتم إرسال كود المخطط إلى خوادمنا. تتم عملية العرض بالكامل داخل متصفحك. وعند المشاركة عبر الرابط يكون الكود مشفراً داخل URL نفسه؛ نحن لا نخزن محتوى مخططاتك ولا نتتبعه.
لماذا أستخدم مخططات نصية؟
المخططات النصية توفر مزايا مهمة: التحكم بالإصدارات (ممتاز مع Git)، سرعة التعديل، اتساق النمط، سهولة البحث، وخفة الحجم، وإمكانية التوليد البرمجي. كما أنها أسهل للمراجعة في طلبات السحب.
هل يمكن تضمين Mermaid في موقعي؟
نعم. يمكنك تضمين مكتبة Mermaid JavaScript في موقعك وإضافة كتل كود Mermaid. كثير من المنصات تدعم Mermaid أصلاً مثل GitHub وGitLab وNotion وObsidian.
ما الحجم الأقصى الموصى به للمخطط؟
لا يوجد حد صارم، لكن المخططات الكبيرة جداً (أكثر من نحو 100 عقدة) قد تُعرض ببطء حسب جهازك. للأنظمة المعقدة، الأفضل تقسيمها إلى عدة مخططات أصغر وأكثر تركيزاً.

هل أنت مستعد لإنشاء أول مخطط لك؟

جرّب عارض Mermaid المجاني عبر الإنترنت وابدأ إنشاء مخططات احترافية خلال دقائق.

افتح عارض Mermaid