موقع الوثائق للغة البرمجة DART ، التي تم تصميمها مع مرضي واستضافها على قاعدة FIREBASE.
نرحب بالمساهمات من جميع الأنواع! لإعداد الموقع محليًا ، اتبع الإرشادات أدناه على بناء الموقع. لمعرفة المزيد حول المساهمة في هذا المستودع ، تحقق من الإرشادات المساهمة.
ابدأ بالبحث عن مشكلة تجذب اهتمامك ، أو إنشاء مشكلة مع التغيير المقترح. فكر في إضافة تعليق لإعلام الجميع أنك تعمل عليه ، ولا تتردد في طرح أي أسئلة لديك حول نفس المشكلة.
لتحديث هذا الموقع ، تافهة الريبو ، وإجراء التغييرات الخاصة بك ، وإنشاء طلب سحب. بالنسبة للتغييرات الصغيرة والمحتوى (مثل الإصلاحات النمطية والطبعية) ، ربما لا تحتاج إلى إنشاء هذا الموقع. في كثير من الأحيان يمكنك إجراء تغييرات باستخدام واجهة المستخدم GitHub. يمكننا تنظيم التغييرات تلقائيًا في طلب السحب الخاص بك.
مهم
إذا كنت تقوم باستنساخ هذا المستودع محليًا ، فاتبع التعليمات أدناه حول الاستنساخ باستخدام الجهاز الفرعي الخاص به.
إذا كان التغيير الخاص بك يتضمن عينات رمز ، فإن إضافة/إزالة الصفحات ، أو يؤثر على التنقل ، فقم بإجراء النظر في إنشاء عملك واختباره قبل تقديمه.
إذا كنت تريد أو تحتاج إلى إنشاء الموقع ، فاتبع الخطوات أدناه.
للتغييرات التي تتجاوز نصًا بسيطًا و CSS Tweaks ، نوصي بتشغيل الموقع محليًا لتمكين دورة تحرير الحفر.
قم بتثبيت الأدوات التالية لإنشاء وتطوير الموقع:
مطلوب أحدث إصدار مستقر من DART لبناء الموقع وتشغيل أدواته. هذا يمكن أن يكون dart المدرجة في sdk رفرفة. إذا لم يكن لديك Dart أو تحتاج إلى التحديث ، فاتبع الإرشادات الموجودة في Get the Dart SDK.
إذا كنت قد قمت بالفعل بتثبيت DART ، فتأكد من أنه على طريقك ، بالفعل أحدث إصدار مستقر:
dart --version
مطلوب أحدث إصدار مستقر LTS من Node.js لبناء الموقع. إذا لم يكن لديك Node.js أو تحتاج إلى التحديث ، فقم بتنزيل الإصدار المقابل لجهاز الكمبيوتر الخاص بك واتبع التعليمات من أرشيف تنزيل Node.js. إذا كنت تفضل ذلك ، فيمكنك استخدام مدير الإصدار مثل NVM ، nvm install من دليل الجذر للمستودع.
إذا كنت قد قمت بالفعل بتثبيت عقدة ، فاحرص على توفرها على مسارك وأحدث إصدار مستقر بالفعل (حاليًا 20.14 أو أحدث) :
node --version
إذا كان الإصدار الخاص بك قديمًا ، فاتبع تعليمات التحديث حول كيفية تثبيته في الأصل.
ملحوظة
يحتوي هذا المستودع على أجهزة فرعية من الجيور ، والتي تؤثر على كيفية استنساخها. تتمتع وثائق Github مساعدة عامة على إعادة الاستنساخ والاستنساخ.
إذا لم تكن عضوًا في مؤسسة DART ، فإننا نوصيك بإنشاء شوكة من هذا الريبو تحت حسابك الخاص ، ثم إرسال العلاقات العامة من هذا الشوكة.
بمجرد حصولك على شوكة (أو أنت عضو في DART ORG) ، اختر واحدة من تقنيات تراجع الجهاز الفرعي التالي:
استنساخ الريبو والوحدة الفرعية الخاصة به في نفس الوقت باستخدام خيار- --recurse-submodules :
git clone --recurse-submodules https://github.com/dart-lang/site-www.git
إذا كنت قد قمت بالفعل بتسليط ريبو بدون عرضها الفرعي ، فقم بتشغيل هذا الأمر من جذر المستودع:
git submodule update --init --recursive
ملحوظة
في أي وقت أثناء التطوير ، يمكنك استخدام أمر git submodule لتحديث العارض الفرعي:
git pull && git submodule update --init --recursive
قبل أن تستمر في إعداد البنية التحتية للموقع ، تحقق من إعداد الإصدارات الصحيحة من DART و Node.js ومتاحة باتباع الإرشادات في الحصول على المتطلبات المسبقة.
اختياري: بعد استنساخ الريبو وفيروساتها الفرعية ، قم بإنشاء فرع للتغييرات الخاصة بك:
git checkout -b <BRANCH_NAME>
من الدليل الجذر للمستودع ، جلب تبعيات DART في الموقع.
dart pub get
تثبيت pnpm باستخدام طريقة التثبيت المفضلة لديك. pnpm هو مدير حزمة بديل وفعال لحزم NPM. إذا كان لديك بالفعل pnpm ، فتأكد من أن لديك أحدث إصدار مستقر. نوصي باستخدام corepack لتثبيت إصدارات pnpm وإدارتها ، حيث يتم تجميعها بمعظم عمليات تثبيت العقدة.
إذا لم تكن قد استخدمت corepack من قبل ، فستحتاج أولاً إلى تمكينه باستخدام corepack enable . بعد ذلك ، لتثبيت إصدار pnpm الصحيح ، من الدليل الجذر للمستودع ، قم corepack install :
corepack enable
corepack install
بمجرد تثبيت pnpm وإعداده ، قم بإحضار تبعيات NPM للموقع باستخدام pnpm install . نوصي بشدة باستخدام pnpm ، ولكن يمكنك أيضًا استخدام npm .
pnpm install
من دليل الجذر ، قم بتشغيل أداة dash_site للتحقق من صحة الإعداد والتعرف على الأوامر المتاحة.
./dash_site --help
من دليل الجذر ، يقدم الموقع محليًا.
./dash_site serve
يقوم هذا الأمر بإنشاء ويخدم الموقع على منفذ محلي مطبوع على المحطة الخاصة بك.
عرض التغييرات الخاصة بك في المتصفح من خلال التنقل إلى http: // localhost: 4000.
لاحظ أن المنفذ قد يكون مختلفًا إذا تم أخذ 4000 .
إذا كنت ترغب في التحقق من إخراج HTML والبنية RAW ، عرض الدليل _site في مستكشف ملف أو IDE.
قم بإجراء تغييراتك على الريبو المحلي.
يجب إعادة بناء الموقع تلقائيًا على معظم التغييرات ، ولكن إذا لم يتم تحديث شيء ما ، فقم بالخروج من العملية وإعادة تشغيل الأمر. يتم التخطيط للتحسينات على هذه الوظيفة. يرجى فتح مشكلة جديدة لتتبع المشكلة في حالة حدوث ذلك.
ارتكب تغييراتك على الفرع وتقديم العلاقات العامة الخاصة بك.
إذا كان التغيير كبيرًا ، أو كنت ترغب في اختباره ، ففكر في التحقق من تغييراتك.
نصيحة
للعثور على أوامر إضافية يمكنك تشغيلها ، ./dash_site --help .
إذا قمت بإجراء تغييرات على الكود في /examples أو /tool ، ارتكب عملك ، ثم قم بتشغيل الأمر التالي للتحقق من أنه محدث ومطابقة معايير الموقع.
./dash_site check-all
إذا أبلغ هذا البرنامج النصي عن أي أخطاء أو تحذيرات ، فإن معالجة هذه القضايا وإعادة تشغيل الأمر. إذا كان لديك أي مشاكل ، اترك تعليقًا على مشكلتك أو طلب سحب ، وسنبذل قصارى جهدنا لمساعدتك. يمكنك أيضًا الدردشة معنا على قناة #hackers-devrel على Discord Flutter Flutter!
بناء يفشل مع Error: Some code excerpts needed to be updated! يعني أن مقتطفات رمز واحدة أو أكثر في ملفات تخفيض الموقع ليست مطابقة لمناطق التعليمات البرمجية المعلنة في ملفات .dart المقابلة.
لحل هذا الخطأ ، من جذر دليل site-www ، قم ./dash_site refresh-excerpts .
لمعرفة المزيد حول إنشاء المقتطفات المقتطفات والتحرير واستخدام الكود ، تحقق من وثائق حزمة Updater المقتطف.
يمكن تنظيم طلبات السحب المقدمة تلقائيًا من قِبل مشرف الموقع. إذا كنت ترغب في تنظيم الموقع بنفسك ، فيمكنك إنشاء نسخة كاملة وتحميلها على Firebase.
إذا لم يكن لديك بالفعل مشروع Firebase ،
انتقل إلى وحدة تحكم Firebase وإنشاء مشروع Firebase الخاص بك (على سبيل المثال ، dart-dev-staging ).
عد إلى المحطة المحلية الخاصة بك وتحقق من تسجيل الدخول.
firebase login
تأكد من وجود مشروعك وتفعيل هذا المشروع:
firebase projects:list
firebase use <your-project>
من الدليل الجذر للمستودع ، قم ببناء الموقع:
./dash_site build
هذا يبني الموقع ونسخه إلى دليل _site المحلي. إذا كان هذا الدليل موجودًا سابقًا ، فسيتم استبداله.
انتشر على موقع الاستضافة الافتراضي لمشروع Firebase المنشط:
firebase deploy --only hosting
انتقل إلى العلاقات العامة الخاصة بك على github وتضمين رابط الإصدار المرحلي. ضع في اعتبارك إضافة إشارة إلى الالتزام الذي قمت بتنظيمه ، بحيث يعرف المراجعون ما إذا كان قد تم إجراء أي تغييرات أخرى.