الدليل الكامل لمخططات Mermaid.js
تعلّم إنشاء مخططات احترافية باستخدام صياغة نصية بسيطة
ما هو Mermaid.js؟
Mermaid أداة للرسم التخطيطي والرسوم البيانية مبنية على JavaScript تستخدم تعريفات نصية مستوحاة من Markdown لإنشاء المخططات وتعديلها ديناميكيًا. وهو مشروع مفتوح المصدر يتيح لك توليد مخططات من أوصاف نصية بسيطة.
بدلاً من أدوات الرسم المعقدة، تكتب صياغة تشبه الكود تصف مخططك، ويقوم Mermaid بعرضه كمخطط مرئي. هذا النهج يجعل المخططات قابلة لإدارة الإصدارات وسهلة التحديث ومثالية للتوثيق.
يتكامل Mermaid بسلاسة مع منصات التوثيق والويكي وملفات Markdown، مما يجعله أداة مفضلة لدى المطورين والكتّاب التقنيين.
لماذا تستخدم Mermaid.js؟
- إدارة الإصدارات: المخططات ملفات نصية، لذا يمكن تتبعها في 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 وإنشاء المخططات
هل أنت مستعد لإنشاء أول مخطط لك؟
جرّب عارض Mermaid المجاني عبر الإنترنت وابدأ إنشاء مخططات احترافية خلال دقائق.
افتح عارض Mermaid