الوثائقDocumentationContributingAdding new docs

إضافة وثائق جديدة

أضف مستندات جديدة إلى موقع الوثائق والمدونة.

للوثائق

  1. أنشئ ملف .mdx جديداً داخل مجلد apps/content/docs/[language] يتضمن محتوى مستندك.
  2. أضف المستند إلى قائمة التنقل في الموقع. للقيام بذلك، أضف عنصراً جديداً إلى ملف src/config/docs.ts داخل خاصية sidebarNav بالمعلومات المطلوبة، واتبع نمط العناصر الموجودة. بهذه الطريقة سيُضاف المستند أيضاً إلى لوحة أوامر البحث.

إعدادات مستندات MDX

تُخزَّن مستندات MDX في مجلدي apps/content/docs/[language] وapps/content/blog/[language]. كل مستند هو ملف MDX يحتوي على ترويسة ببيانات وصفية مثل العنوان والوصف. فيما يلي مثال على ترويسة مستند:

---
title: Document Title
description: Document Description.
sort: 1
---

حقول البيانات الوصفية التالية مدعومة:

  • title (مطلوب): عنوان المستند.
  • description (مطلوب): وصف موجز للمستند.
  • sort (اختياري): رقم يحدد ترتيب المستند في التنقل. تظهر المستندات ذات قيم sort الأقل أولاً. إذا لم يُقدَّم، تُرتّب المستندات أبجدياً حسب العنوان.
  • links (اختياري): روابط إلى مستندات ذات صلة، أو مراجع API، أو الشيفرة المصدرية، وما إلى ذلك.
  • toc (اختياري): يحدد هل تُعرض قائمة المحتويات. القيمة الافتراضية هي true.

لإضافة بيانات وصفية جديدة إلى المستند، يمكنك إضافة مفاتيح جديدة إلى الترويسة. على سبيل المثال، يمكنك إضافة مفتاح author للإشارة إلى مؤلف المستند:

---
title: Document Title
description: Document Description.
sort: 2
author: Author Name
---

لكن عند إضافة بيانات وصفية مخصصة، تحتاج أيضاً إلى تحديث ملف contentlayer.config.ts الموجود في جذر المشروع وداخل خاصية fields في ثوابتي Doc أو Blog. بعد ذلك ستحتاج إلى عرض المعلومات الجديدة في قالب المستند. للقيام بذلك، حدّث ملف src/app/[locale]/docs/[[...slug]]/page.tsx، أو src/app/[locale]/blog/[[...slug]]/page.tsx، أو أحد مكوناته الفرعية.

إعادة بناء Contentlayer

عند إجراء تغييرات على محتوى الوثائق، أو إضافة مستندات جديدة، أو تعديل ملف contentlayer.config.ts، ستحتاج إلى إعادة بناء ذاكرة Contentlayer المؤقتة حتى تظهر تغييراتك أثناء التطوير. شغّل:

cd apps/web
pnpm contentlayer:build

يعيد هذا الأمر توليد أنواع المحتوى والبيانات التي يحتاجها التطبيق. ستحتاج إلى تشغيله كلما:

  • أضفت حقول بيانات وصفية جديدة إلى ملف contentlayer.config.ts
  • أضفت أو عدّلت محتوى MDX عندما لا يكون خادم التطوير قيد التشغيل
  • غيّرت بنية تنظيم المحتوى

يُشغَّل الأمر تلقائياً عند بناء المشروع للإنتاج، لكنك ستحتاج إلى تشغيله يدوياً أثناء التطوير إذا أجريت تغييرات بنيوية على المحتوى.