diff --git a/translations/ar/.co-op-translator.json b/translations/ar/.co-op-translator.json index 2281d8f25..10e92f9e3 100644 --- a/translations/ar/.co-op-translator.json +++ b/translations/ar/.co-op-translator.json @@ -493,7 +493,7 @@ }, "AGENTS.md": { "original_hash": "a362efd06d64d4134a0cfe8515a86d34", - "translation_date": "2026-04-06T17:39:16+00:00", + "translation_date": "2026-04-20T15:40:18+00:00", "source_file": "AGENTS.md", "language_code": "ar" }, diff --git a/translations/ar/AGENTS.md b/translations/ar/AGENTS.md index 8ed4cd399..5bc085f57 100644 --- a/translations/ar/AGENTS.md +++ b/translations/ar/AGENTS.md @@ -2,27 +2,27 @@ ## نظرة عامة على المشروع -هذا مستودع منهج تعليمي لتعليم أساسيات تطوير الويب للمبتدئين. المنهج هو دورة شاملة مدتها 12 أسبوعًا تم تطويرها بواسطة Microsoft Cloud Advocates، ويشتمل على 24 درسًا عمليًا يغطي JavaScript وCSS وHTML. +هذا مستودع منهج تعليمي لتعليم أساسيات تطوير الويب للمبتدئين. المنهج هو دورة شاملة مدتها 12 أسبوعًا تم تطويرها بواسطة Microsoft Cloud Advocates، ويضم 24 درسًا عمليًا يغطي JavaScript و CSS و HTML. ### المكونات الرئيسية -- **المحتوى التعليمي**: 24 درسًا منظمًا في وحدات قائمة على المشاريع -- **المشاريع العملية**: تيراريوم، لعبة الطباعة، إضافة متصفح، لعبة الفضاء، تطبيق بنكي، محرر الشفرات، ومساعد دردشة الذكاء الاصطناعي -- **اختبارات تفاعلية**: 48 اختبارًا يحتوي كل منها على 3 أسئلة (تقييمات قبل وبعد الدرس) -- **دعم لغات متعددة**: ترجمات تلقائية لأكثر من 50 لغة عبر GitHub Actions -- **التقنيات**: HTML، CSS، JavaScript، Vue.js 3، Vite، Node.js، Express، Python (لمشاريع الذكاء الاصطناعي) +- **المحتوى التعليمي**: 24 درسًا منظّمة ضمن وحدات قائمة على المشاريع +- **المشاريع العملية**: Terrarium، لعبة الطباعة، إضافة المتصفح، لعبة الفضاء، تطبيق البنك، محرر الأكواد، ومساعد دردشة AI +- **اختبارات تفاعلية**: 48 اختبارًا كل منها يحتوي على 3 أسئلة (تقييمات قبل وبعد الدرس) +- **دعم متعدد اللغات**: ترجمات آلية لأكثر من 50 لغة عبر GitHub Actions +- **التقنيات**: HTML، CSS، JavaScript، Vue.js 3، Vite، Node.js، Express، Python (لمشاريع الذكاء الاصطناعي) -### البنية +### الهيكلية -- مستودع تعليمي به هيكل قائم على الدروس -- يحتوي كل مجلد درس على README وأمثلة الشفرة والحلول -- مشاريع مستقلة في مجلدات منفصلة (quiz-app، مشاريع دروس متنوعة) -- نظام ترجمة يستخدم GitHub Actions (co-op-translator) -- التوثيق مقدم عبر Docsify ومتوفر كملف PDF +- مستودع تعليمي به هيكلية قائمة على الدروس +- يحتوي كل مجلد درس على README، وأمثلة على الشفرة، والحلول +- مشاريع قائمة بذاتها في مجلدات منفصلة (quiz-app، مشاريع دروس مختلفة) +- نظام ترجمة يستخدم GitHub Actions (co-op-translator) +- الوثائق مقدمة عبر Docsify ومتاحة كملفات PDF ## أوامر الإعداد -هذا المستودع موجه أساسًا لاستهلاك المحتوى التعليمي. للعمل على مشاريع محددة: +هذا المستودع مخصص بشكل أساسي لاستهلاك المحتوى التعليمي. للعمل على مشاريع محددة: ### إعداد المستودع الرئيسي @@ -31,24 +31,24 @@ git clone https://github.com/microsoft/Web-Dev-For-Beginners.git cd Web-Dev-For-Beginners ``` -### إعداد تطبيق الاختبار (Vue 3 + Vite) +### إعداد تطبيق الاختبارات (Vue 3 + Vite) ```bash cd quiz-app npm install -npm run dev # بدء خادم التطوير -npm run build # البناء للإنتاج +npm run dev # ابدأ خادم التطوير +npm run build # إنشاء للإنتاج npm run lint # تشغيل ESLint ``` -### واجهة برمجة تطبيقات مشروع البنك (Node.js + Express) +### API مشروع البنك (Node.js + Express) ```bash cd 7-bank-project/api npm install npm start # بدء خادم API npm run lint # تشغيل ESLint -npm run format # التنسيق مع Prettier +npm run format # التنسيق باستخدام Prettier ``` ### مشاريع إضافة المتصفح @@ -56,7 +56,7 @@ npm run format # التنسيق مع Prettier ```bash cd 5-browser-extension/solution npm install -# اتبع التعليمات الخاصة بتحميل الامتداد لمتصفح معين +# اتبع تعليمات تحميل الإضافات الخاصة بالمتصفح ``` ### مشاريع لعبة الفضاء @@ -67,7 +67,7 @@ npm install # افتح index.html في المتصفح أو استخدم Live Server ``` -### مشروع الدردشة (باك إند بايثون) +### مشروع الدردشة (خلفية Python) ```bash cd 9-chat-project/solution/backend/python @@ -76,33 +76,33 @@ pip install openai python api.py ``` -## سير العمل في التطوير +## سير العمل التطويري ### للمساهمين في المحتوى -1. **انشئ فورك للمستودع** في حساب GitHub الخاص بك -2. **استنسخ فوركك** محليًا -3. **أنشئ فرعًا جديدًا** لتغييراتك -4. قم بإجراء تغييرات على محتوى الدروس أو أمثلة الشفرة -5. اختبر أي تغييرات بالشفرة في مجلدات المشاريع المعنية -6. قدم طلبات سحب وفقًا لإرشادات المساهمة +1. **افتح فورك للمستودع** على حساب GitHub الخاص بك +2. **انسخ الفورك محليًا** +3. **أنشئ فرعًا جديدًا** لتغييراتك +4. قم بإجراء تغييرات على محتوى الدرس أو أمثلة الشفرة +5. اختبر أي تغييرات في الشفرة في مجلدات المشروع المعنية +6. قدم طلبات سحب باتباع إرشادات المساهمة ### للمتعلمين -1. أنشئ فوركًا أو استنسخ المستودع -2. انتقل إلى مجلدات الدروس تباعًا -3. اقرأ ملفات README لكل درس -4. أكمل اختبارات ما قبل الدرس على https://ff-quizzes.netlify.app/web/ -5. اعمل على أمثلة الشفرة في مجلدات الدرس -6. أكمل الواجبات والتحديات -7. خذ اختبارات ما بعد الدرس +1. افتح فورك أو انسخ المستودع +2. انتقل إلى مجلدات الدروس بترتيب متسلسل +3. اقرأ ملفات README لكل درس +4. أكمل اختبارات ما قبل الدرس على https://ff-quizzes.netlify.app/web/ +5. اعمل على أمثلة الشفرة في مجلدات الدرس +6. أكمل المهام والتحديات +7. قم بأداء اختبارات ما بعد الدرس -### التطوير المباشر +### التطوير الحي -- **التوثيق**: شغل `docsify serve` من جذر المستودع (المنفذ 3000) -- **تطبيق الاختبارات**: شغل `npm run dev` في مجلد quiz-app -- **المشاريع**: استخدم امتداد VS Code Live Server لمشاريع HTML -- **مشاريع API**: شغل `npm start` في مجلدات الـ API ذات الصلة +- **الوثائق**: شغّل `docsify serve` في جذر المستودع (المنفذ 3000) +- **تطبيق الاختبارات**: شغّل `npm run dev` في دليل quiz-app +- **المشاريع**: استخدم ملحق VS Code Live Server لمشاريع HTML +- **مشاريع API**: شغّل `npm start` في مجلدات API المعنية ## تعليمات الاختبار @@ -110,173 +110,173 @@ python api.py ```bash cd quiz-app -npm run lint # التحقق من مشكلات نمط الشفرة -npm run build # التحقق من نجاح البناء +npm run lint # التحقق من وجود مشكلات في نمط الكود +npm run build # التأكد من نجاح البناء ``` -### اختبار API البنك +### اختبار Bank API ```bash cd 7-bank-project/api -npm run lint # التحقق من مشاكل نمط الكود -node server.js # التأكد من بدء الخادم بدون أخطاء +npm run lint # التحقق من مشاكل تنسيق الكود +node server.js # التأكد من أن الخادم يبدأ بدون أخطاء ``` -### نهج الاختبار العام +### النهج العام للاختبار -- هذا مستودع تعليمي بدون اختبارات آلية شاملة -- التركيز على الاختبار اليدوي على: - - تشغيل أمثلة الشفرة بدون أخطاء - - عمل روابط التوثيق بشكل صحيح - - اكتمال بناء المشاريع بنجاح - - اتّباع أفضل الممارسات في الأمثلة +- هذا مستودع تعليمي بدون اختبارات آلية شاملة +- يركز الاختبار اليدوي على: + - تشغيل أمثلة الشفرة بدون أخطاء + - عمل الروابط في الوثائق بشكل صحيح + - إتمام بناء المشاريع بنجاح + - اتباع أفضل الممارسات في الأمثلة -### فحوصات ما قبل الإرسال +### الفحوصات قبل الإرسال -- شغل `npm run lint` في المجلدات التي تحوي ملف package.json -- تحقق من صلاحية روابط markdown -- اختبر أمثلة الشفرة في المتصفح أو Node.js -- تحقق من أن الترجمات تحافظ على البنية الصحيحة +- شغّل `npm run lint` في المجلدات التي تحتوي على package.json +- تحقق من صلاحية روابط markdown +- اختبر أمثلة الشفرة في المتصفح أو Node.js +- تأكد من أن الترجمات تحافظ على الهيكلية الصحيحة -## إرشادات أسلوب كتابة الشفرة +## إرشادات نمط الترميز -### جافا سكريبت +### JavaScript -- استخدم بناء جملة ES6+ الحديثة -- اتبع تكوين ESLint القياسي في المشاريع -- استخدم أسماء متغيرات ودوال واضحة للتوضيح التعليمي -- أضف تعليقات تشرح المفاهيم للمتعلمين -- نسق الشفرة باستخدام Prettier حيثما تم تكوينه +- استخدم صِيَغ ES6+ الحديثة +- اتبع تكوينات ESLint القياسية المقدمة في المشاريع +- استخدم أسماء متغيرات ودوال ذات معنى لتوضيح التعلم +- أضف تعليقات تشرح المفاهيم للمتعلمين +- نسق باستخدام Prettier حيثما تم تهيئته ### HTML/CSS -- استخدم عناصر HTML5 الدلالية -- مبادئ التصميم المتجاوب -- قواعد تسمية واضحة للفئات -- تعليقات تشرح تقنيات CSS للمتعلمين +- عناصر HTML5 دلالية +- مبادئ التصميم المتجاوب +- تسميات واضحة للفئات +- تعليقات تشرح تقنيات CSS للمتعلمين -### بايثون +### Python -- إرشادات الأسلوب PEP 8 -- أمثلة شفرة واضحة وتعليمية -- تلميحات الأنواع حيث تساعد في التعلم +- إرشادات نمط PEP 8 +- أمثلة شفرة واضحة وتعليمية +- استخدام تلميحات النوع حيثما كان ذلك مفيدًا للتعلم ### توثيق Markdown -- تراتبية عناوين واضحة -- كتل شفرة مع تحديد اللغة -- روابط لمصادر إضافية -- لقطات شاشة وصور في مجلدات `images/` -- نص بديل للصور لملائمة ذوي الاحتياجات +- هيكلية عناوين واضحة +- كتل شفرة مع تحديد اللغة +- روابط لمصادر إضافية +- لقطات شاشة وصور في مجلدات `images/` +- نص بديل للصور لتوفير إمكانية الوصول ### تنظيم الملفات -- دروس مرقمة بالتسلسل (1-getting-started-lessons، 2-js-basics، إلخ) -- كل مشروع يحتوي على مجلد `solution/` وغالبًا `start/` أو `your-work/` -- الصور مخزنة في مجلدات `images/` الخاصة بكل درس -- الترجمات في هيكل `translations/{language-code}/` +- ترقيم الدروس بتسلسل (1-getting-started-lessons، 2-js-basics، إلخ) +- لكل مشروع مجلدات `solution/` وغالبًا `start/` أو `your-work/` +- تخزين الصور في مجلدات `images/` الخاصة بكل درس +- الترجمات ضمن هيكل `translations/{language-code}/` ## البناء والنشر -### نشر تطبيق الاختبار (Azure Static Web Apps) +### نشر تطبيق الاختبارات (Azure Static Web Apps) -تم تهيئة quiz-app لنشر Azure Static Web Apps: +تم تكوين تطبيق quiz-app للنشر عبر Azure Static Web Apps: ```bash cd quiz-app npm run build # ينشئ مجلد dist/ -# ينشر عبر سير عمل GitHub Actions عند الدفع إلى الفرع الرئيسي +# ينشر من خلال سير عمل GitHub Actions عند الدفع إلى الفرع الرئيسي ``` -إعداد Azure Static Web Apps: -- **موقع التطبيق**: `/quiz-app` -- **موقع الخرج**: `dist` -- **سير العمل**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` +تكوين Azure Static Web Apps: +- **موقع التطبيق**: `/quiz-app` +- **موقع الإخراج**: `dist` +- **سير العمل**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` -### إنشاء PDF للتوثيق +### توليد ملفات PDF للوثائق ```bash npm install # تثبيت docsify-to-pdf -npm run convert # إنشاء ملف PDF من docs +npm run convert # توليد PDF من المستندات ``` ### توثيق Docsify ```bash -npm install -g docsify-cli # تثبيت دوكسفاي على مستوى النظام +npm install -g docsify-cli # تثبيت Docsify على مستوى النظام docsify serve # الخادم على localhost:3000 ``` -### عمليات بناء خاصة بالمشاريع +### عمليات البناء الخاصة بكل مشروع -قد يحتوي كل مجلد مشروع على عملية بناء خاصة به: -- مشاريع Vue: `npm run build` لإنشاء حزَم الإنتاج -- المشاريع الثابتة: لا توجد خطوة بناء، يقدم الملفات مباشرة +قد يكون لكل مجلد مشروع عملية بناء خاصة به: +- مشاريع Vue: `npm run build` لإنشاء حزم الإنتاج +- المشاريع الثابتة: لا توجد خطوة بناء، تقدم الملفات مباشرة ## إرشادات طلبات السحب -### تنسيق العنوان +### صيغة العنوان -استخدم عناوين واضحة ووصّافية تشير إلى مجال التغيير: -- `[Quiz-app] إضافة اختبار جديد للدرس X` -- `[Lesson-3] إصلاح خطأ في مشروع التيراريوم` -- `[Translation] إضافة الترجمة الإسبانية للدرس 5` -- `[Docs] تحديث تعليمات الإعداد` +استخدم عناوين واضحة ووصفية تشير إلى مجال التغيير: +- `[Quiz-app] إضافة اختبار جديد للدرس X` +- `[Lesson-3] إصلاح خطأ مطبعي في مشروع terrarium` +- `[Translation] إضافة ترجمة إسبانية للدرس 5` +- `[Docs] تحديث تعليمات الإعداد` ### الفحوصات المطلوبة -قبل تقديم PR: +قبل تقديم طلب السحب: -1. **جودة الشفرة**: - - شغل `npm run lint` في مجلدات المشاريع المتأثرة - - أصلح كل أخطاء وتحذيرات اللينت +1. **جودة الشفرة**: + - شغّل `npm run lint` في مجلدات المشاريع المتأثرة + - أصلح جميع أخطاء وتحذيرات اللينتر -2. **التحقق من البناء**: - - شغل `npm run build` إذا كان مطبقًا - - تأكد من عدم وجود أخطاء في البناء +2. **التحقق من البناء**: + - شغّل `npm run build` إذا كان ذلك مناسبًا + - تأكد من عدم وجود أخطاء في البناء -3. **التحقق من الروابط**: - - اختبر كل روابط markdown - - تحقق من عمل مراجع الصور +3. **التحقق من الروابط**: + - اختبر جميع روابط markdown + - تحقق من عمل مراجع الصور -4. **مراجعة المحتوى**: - - تدقيق إملائي ونحوي - - التأكد من صحة وأهداف أمثلة الشفرة التعليمية - - مراجعة الترجمات للحفاظ على المعنى الأصلي +4. **مراجعة المحتوى**: + - تدقيق إملائي ونحوي + - تأكد من صحة وأسلوب أمثلة الشفرة التعليمية + - تحقق من دقة الترجمات والمحافظة على المعنى الأصلي ### متطلبات المساهمة -- الموافقة على اتفاقية المساهمة مع مايكروسوفت (فحص تلقائي عند PR الأول) -- اتبع [مدونة قواعد السلوك المفتوح لمايكروسوفت](https://opensource.microsoft.com/codeofconduct/) -- راجع [CONTRIBUTING.md](./CONTRIBUTING.md) للإرشادات التفصيلية -- أدرج أرقام القضايا في وصف PR إن وجدت +- الموافقة على اتفاقية Microsoft CLA (فحص تلقائي عند أول PR) +- الالتزام بـ [ميثاق السلوك المصدر المفتوح من Microsoft](https://opensource.microsoft.com/codeofconduct/) +- انظر [CONTRIBUTING.md](./CONTRIBUTING.md) للإرشادات التفصيلية +- أدرج أرقام القضايا في وصف طلب السحب إذا وجد ### عملية المراجعة -- تراجع PRs من قِبل القائمين والمجتمع -- تُعطى أولوية للوضوح التعليمي -- يجب أن تتبع أمثلة الشفرة أفضل الممارسات الحالية -- تراجع الترجمات من حيث الدقة والملاءمة الثقافية +- يتم مراجعة طلبات السحب من قبل الصيانة والمجتمع +- تُعطى أولوية لوضوح المحتوى التعليمي +- يجب أن تتبع أمثلة الشفرة أفضل الممارسات الحالية +- تُراجع الترجمات للدقة والملائمة الثقافية ## نظام الترجمة -### الترجمة التلقائية +### الترجمة الآلية -- يستخدم GitHub Actions مع سير العمل co-op-translator -- يترجم تلقائيًا إلى أكثر من 50 لغة -- الملفات المصدرية في الدلائل الرئيسية -- الملفات المترجمة في مجلدات `translations/{language-code}/` +- يستخدم GitHub Actions مع سير العمل co-op-translator +- يترجم تلقائيًا لأكثر من 50 لغة +- ملفات المصدر في الأدلة الرئيسية +- ملفات الترجمة في مجلدات `translations/{language-code}/` -### إضافة تحسينات الترجمة يدويًا +### إضافة تحسينات يدوية للترجمة -1. حدّد الملف في `translations/{language-code}/` -2. قم بالتحسينات مع الحفاظ على الهيكل -3. تأكد من بقاء أمثلة الشفرة عملية -4. اختبر أي محتوى اختبارات محلي +1. حدد موقع الملف في `translations/{language-code}/` +2. قم بإجراء التحسينات مع الحفاظ على الهيكلية +3. تأكد من استمرارية عمل أمثلة الشفرة +4. اختبر أي محتوى اختبار محلي -### بيانات تعريف الترجمة +### بيانات وصفية للترجمة -تشمل الملفات المترجمة رأس بيانات تعريف: +تتضمن الملفات المترجمة رأس بيانات وصفية: ```markdown -**إخلاء المسؤولية**: -تمت ترجمة هذا المستند باستخدام خدمة الترجمة الآلية [Co-op Translator](https://github.com/Azure/co-op-translator). بينما نسعى للدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو عدم دقة. يجب اعتبار الوثيقة الأصلية بلغتها الأصلية المصدر الموثوق. للمعلومات الحساسة، يُنصح بالترجمة البشرية المهنية. نحن غير مسؤولين عن أي سوء فهم أو تفسيرات خاطئة ناتجة عن استخدام هذه الترجمة. +**تنويه**: +تمت ترجمة هذا المستند باستخدام خدمة الترجمة الآلية [Co-op Translator](https://github.com/Azure/co-op-translator). بينما نسعى لتحقيق الدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو عدم دقة. يجب اعتبار المستند الأصلي بلغته الأصلية المصدر الموثوق والمعتمد. للمعلومات الحساسة أو الحيوية، يُنصح بالاعتماد على ترجمة بشرية محترفة. نحن غير مسؤولين عن أي سوء فهم أو تفسير ناتج عن استخدام هذه الترجمة. \ No newline at end of file diff --git a/translations/de/.co-op-translator.json b/translations/de/.co-op-translator.json index 9f89c887a..de211cb2e 100644 --- a/translations/de/.co-op-translator.json +++ b/translations/de/.co-op-translator.json @@ -493,7 +493,7 @@ }, "AGENTS.md": { "original_hash": "a362efd06d64d4134a0cfe8515a86d34", - "translation_date": "2026-04-06T17:37:00+00:00", + "translation_date": "2026-04-20T15:37:29+00:00", "source_file": "AGENTS.md", "language_code": "de" }, diff --git a/translations/de/AGENTS.md b/translations/de/AGENTS.md index bc7fa0959..edd12525d 100644 --- a/translations/de/AGENTS.md +++ b/translations/de/AGENTS.md @@ -2,29 +2,29 @@ ## Projektübersicht -Dies ist ein Bildungs-Curriculum-Repository zum Vermitteln von Webentwicklungsgrundlagen für Anfänger. Das Curriculum ist ein umfassender 12-Wochen-Kurs, der von Microsoft Cloud Advocates entwickelt wurde und 24 praxisorientierte Lektionen zu JavaScript, CSS und HTML enthält. +Dies ist ein Bildungs-Curriculum-Repository zum Erlernen der Grundlagen der Webentwicklung für Einsteiger. Das Curriculum ist ein umfassender 12-Wochen-Kurs, der von Microsoft Cloud Advocates entwickelt wurde und 24 praxisorientierte Lektionen zu JavaScript, CSS und HTML enthält. ### Hauptkomponenten -- **Bildungsinhalte**: 24 strukturierte Lektionen, organisiert in projektbasierten Modulen -- **Praktische Projekte**: Terrarium, Tipp-Spiel, Browser-Erweiterung, Weltraumspiel, Banking-App, Code-Editor und KI-Chat-Assistent -- **Interaktive Quizze**: 48 Quizze mit je 3 Fragen (Vor-/Nach-Lektionsbewertungen) -- **Mehrsprachige Unterstützung**: Automatisierte Übersetzungen in über 50 Sprachen via GitHub Actions -- **Technologien**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (für KI-Projekte) +- **Bildungsinhalte**: 24 strukturierte Lektionen, organisiert in projektbasierten Modulen +- **Praktische Projekte**: Terrarium, Tipp-Spiel, Browser-Erweiterung, Weltraumspiel, Banking-App, Code-Editor und KI-Chat-Assistent +- **Interaktive Quizze**: 48 Quizze mit jeweils 3 Fragen (Vor-/Nach-Lektion Bewertungen) +- **Mehrsprachige Unterstützung**: Automatisierte Übersetzungen für über 50 Sprachen via GitHub Actions +- **Technologien**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (für KI-Projekte) ### Architektur -- Bildungsrepository mit lektionenbasierter Struktur -- Jeder Lektionen-Ordner enthält README, Codebeispiele und Lösungen -- Eigenständige Projekte in separaten Verzeichnissen (quiz-app, diverse Lektionenprojekte) -- Übersetzungssystem mittels GitHub Actions (co-op-translator) -- Dokumentation bereitgestellt via Docsify und als PDF verfügbar +- Bildungs-Repository mit lektionenbasierter Struktur +- Jeder Lektionenordner enthält README, Codebeispiele und Lösungen +- Eigenständige Projekte in separaten Verzeichnissen (quiz-app, verschiedene Lektionenprojekte) +- Übersetzungssystem unter Verwendung von GitHub Actions (co-op-translator) +- Dokumentation bereitgestellt über Docsify und als PDF verfügbar ## Setup-Befehle -Dieses Repository dient hauptsächlich zum Konsumieren von Bildungsinhalten. Für die Arbeit mit spezifischen Projekten: +Dieses Repository dient hauptsächlich dem Konsum von Bildungsinhalten. Für die Arbeit mit spezifischen Projekten: -### Haupt-Repository Setup +### Haupt-Repository-Setup ```bash git clone https://github.com/microsoft/Web-Dev-For-Beginners.git @@ -37,11 +37,11 @@ cd Web-Dev-For-Beginners cd quiz-app npm install npm run dev # Entwicklungsserver starten -npm run build # Für die Produktion bauen +npm run build # Für die Produktion erstellen npm run lint # ESLint ausführen ``` -### Bankprojekt API (Node.js + Express) +### Bank-Projekt API (Node.js + Express) ```bash cd 7-bank-project/api @@ -56,7 +56,7 @@ npm run format # Mit Prettier formatieren ```bash cd 5-browser-extension/solution npm install -# Befolgen Sie die browserspezifischen Anweisungen zum Laden der Erweiterung +# Folgen Sie den browserspezifischen Anweisungen zum Laden der Erweiterung ``` ### Weltraumspiel-Projekte @@ -64,7 +64,7 @@ npm install ```bash cd 6-space-game/solution npm install -# Öffnen Sie index.html im Browser oder verwenden Sie Live Server +# Öffne index.html im Browser oder verwende Live Server ``` ### Chat-Projekt (Python Backend) @@ -72,109 +72,109 @@ npm install ```bash cd 9-chat-project/solution/backend/python pip install openai -# Setzen Sie die Umgebungsvariable GITHUB_TOKEN +# Setze die Umgebungsvariable GITHUB_TOKEN python api.py ``` ## Entwicklungs-Workflow -### Für Inhaltsbeiträge +### Für Inhaltsanbieter -1. **Forke das Repository** in dein GitHub-Konto -2. **Klone deinen Fork** lokal -3. **Erstelle einen neuen Branch** für deine Änderungen -4. Ändere Inhalte der Lektionen oder Codebeispiele -5. Teste alle Codeänderungen in den relevanten Projektverzeichnissen -6. Reiche Pull Requests entsprechend der Beitragsrichtlinien ein +1. **Forke das Repository** in dein GitHub-Konto +2. **Klon deinen Fork** lokal +3. **Erstelle einen neuen Branch** für deine Änderungen +4. Ändere Inhalte der Lektionen oder Codebeispiele +5. Teste Codeänderungen in den entsprechenden Projektverzeichnissen +6. Reiche Pull Requests gemäß den Beitragsrichtlinien ein ### Für Lernende -1. Forke oder klone das Repository -2. Navigiere nacheinander zu den Lektionen-Ordnern -3. Lies die README-Dateien jeder Lektion -4. Mache Vorab-Quizze unter https://ff-quizzes.netlify.app/web/ -5. Arbeite die Codebeispiele in den Lektionen durch -6. Bearbeite Aufgaben und Herausforderungen -7. Absolviere Nachbereitungs-Quizze +1. Forke oder klone das Repository +2. Navigiere nacheinander zu Lektionen-Verzeichnissen +3. Lies README-Dateien jeder Lektion +4. Absolviere Pre-Lesson-Quizze unter https://ff-quizzes.netlify.app/web/ +5. Arbeite die Codebeispiele in den Lektionenordnern durch +6. Bearbeite Aufgaben und Herausforderungen +7. Mache Post-Lesson-Quizze ### Live-Entwicklung -- **Dokumentation**: Führe `docsify serve` im Root aus (Port 3000) -- **Quiz-App**: Führe `npm run dev` im quiz-app-Verzeichnis aus -- **Projekte**: Nutze VS Code Live Server Erweiterung für HTML-Projekte -- **API-Projekte**: Führe `npm start` in jeweiligen API-Verzeichnissen aus +- **Dokumentation**: Führe `docsify serve` im Root-Verzeichnis aus (Port 3000) +- **Quiz-App**: Führe `npm run dev` im Verzeichnis quiz-app aus +- **Projekte**: Nutze VS Code Live Server Erweiterung für HTML-Projekte +- **API-Projekte**: Führe `npm start` in den jeweiligen API-Verzeichnissen aus -## Testanleitungen +## Testanweisungen -### Quiz-App Tests +### Quiz-App-Tests ```bash cd quiz-app -npm run lint # Überprüfen auf Code-Stilprobleme -npm run build # Überprüfen, ob der Build erfolgreich ist +npm run lint # Überprüfen Sie auf Code-Stil-Probleme +npm run build # Überprüfen Sie, ob der Build erfolgreich ist ``` -### Bank API Tests +### Bank API-Tests ```bash cd 7-bank-project/api -npm run lint # Überprüfen Sie auf Code-Stilprobleme +npm run lint # Überprüfen Sie auf Probleme mit dem Code-Stil node server.js # Überprüfen Sie, ob der Server ohne Fehler startet ``` ### Allgemeiner Testansatz -- Dies ist ein Bildungsrepository ohne umfassende automatisierte Tests -- Manuelle Tests konzentrieren sich auf: - - Codebeispiele laufen fehlerfrei - - Links in der Dokumentation funktionieren korrekt - - Projekt-Builds laufen erfolgreich durch - - Beispiele folgen Best Practices +- Dies ist ein Bildungs-Repository ohne umfassende automatisierte Tests +- Manuelles Testen konzentriert sich auf: + - Codebeispiele laufen fehlerfrei + - Links in der Dokumentation funktionieren korrekt + - Projekte bauen fehlerfrei + - Beispiele folgen Best Practices -### Vor-Einreichungs-Checks +### Vorab-Checks vor Pull Requests -- Führe `npm run lint` in Verzeichnissen mit package.json aus -- Überprüfe Markdown-Links auf Gültigkeit -- Teste Codebeispiele im Browser oder in Node.js -- Prüfe, dass Übersetzungen die korrekte Struktur beibehalten +- Führe `npm run lint` in Verzeichnissen mit package.json aus +- Überprüfe ob Markdown-Links gültig sind +- Teste Codebeispiele im Browser oder Node.js +- Prüfe, dass Übersetzungen die richtige Struktur behalten -## Code-Stilrichtlinien +## Code Style Richtlinien ### JavaScript -- Verwende moderne ES6+ Syntax -- Beachte Standard-ESLint-Konfigurationen der Projekte -- Nutze aussagekräftige Variablen- und Funktionsnamen zur besseren Verständlichkeit -- Füge erläuternde Kommentare für Lernende hinzu -- Formatiere mit Prettier, wo konfiguriert +- Verwende moderne ES6+ Syntax +- Folge den standardmäßigen ESLint-Konfigurationen der Projekte +- Verwende aussagekräftige Variablen- und Funktionsnamen für Bildungszwecke +- Füge erklärende Kommentare für Lernende hinzu +- Formatiere mit Prettier, wenn konfiguriert ### HTML/CSS -- Semantische HTML5-Elemente -- Responsive Design Prinzipien -- Klare Klassennamen-Konventionen -- Kommentare, die CSS-Techniken für Lernende erklären +- Semantische HTML5-Elemente +- Responsive Design Prinzipien +- Klare Klassennamen-Konventionen +- Kommentare, die CSS-Techniken für Lernende erklären ### Python -- PEP 8 Stilrichtlinien -- Klare, didaktische Codebeispiele -- Typannotationen, wo sinnvoll für den Lernprozess +- PEP 8 Stilrichtlinien +- Klare, bildungsorientierte Codebeispiele +- Type Hints wo hilfreich zum Lernen ### Markdown-Dokumentation -- Klare Überschriftenhierarchie -- Codeblöcke mit Sprachangabe -- Verlinkungen zu weiteren Ressourcen -- Screenshots und Bilder in `images/` Verzeichnissen -- Alt-Texte für Bilder zwecks Barrierefreiheit +- Klare Überschriftenhierarchie +- Codeblöcke mit Sprachangabe +- Links zu weiterführenden Ressourcen +- Screenshots und Bilder in `images/` Verzeichnissen +- Alt-Text für Bilder für Barrierefreiheit ### Dateiorganisation -- Lektionen nummeriert und sequenziell (1-getting-started-lessons, 2-js-basics, etc.) -- Jedes Projekt mit `solution/` und oft `start/` oder `your-work/` Ordnern -- Bilder liegen in lektionenspezifischen `images/` Ordnern -- Übersetzungen in `translations/{language-code}/` Verzeichnisstruktur +- Lektionen nummeriert (1-getting-started-lessons, 2-js-basics, etc.) +- Jedes Projekt hat `solution/` und oft `start/` oder `your-work/` Verzeichnisse +- Bilder in lektionenspezifischen `images/` Ordnern +- Übersetzungen in `translations/{language-code}/` Struktur ## Build und Deployment @@ -184,99 +184,99 @@ Die quiz-app ist für Azure Static Web Apps Deployment konfiguriert: ```bash cd quiz-app -npm run build # Erstellt Ordner dist/ -# Setzt Bereitstellung per GitHub Actions Workflow bei Push auf main um +npm run build # Erstellt den Ordner dist/ +# Führt Bereitstellung über GitHub Actions Workflow bei Push auf main durch ``` - -Azure Static Web Apps Konfiguration: -- **App Location**: `/quiz-app` -- **Output Location**: `dist` -- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` -### PDF-Erstellung der Dokumentation +Azure Static Web Apps Konfiguration: +- **App Location**: `/quiz-app` +- **Output Location**: `dist` +- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` + +### Generierung der PDF-Dokumentation ```bash npm install # Installiere docsify-to-pdf -npm run convert # Erzeuge PDF aus docs +npm run convert # Erzeuge PDF aus Docs ``` - + ### Docsify Dokumentation ```bash -npm install -g docsify-cli # Docsify global installieren +npm install -g docsify-cli # Installiere Docsify global docsify serve # Auf localhost:3000 bereitstellen ``` - -### Projekt-spezifische Builds -Jedes Projektverzeichnis kann einen eigenen Buildprozess haben: -- Vue-Projekte: `npm run build` erstellt Produktions-Bundles -- Statische Projekte: Kein Build-Schritt, Dateien werden direkt bedient +### Projektspezifische Builds -## Pull-Request-Richtlinien +Jedes Projektverzeichnis kann einen eigenen Build-Prozess besitzen: +- Vue-Projekte: `npm run build` erstellt Produktions-Bundles +- Statische Projekte: Kein Build-Schritt, Dateien werden direkt ausgeliefert + +## Pull Request Richtlinien ### Titel-Format -Verwende klare, beschreibende Titel, die den Änderungsbereich angeben: -- `[Quiz-app] Füge neues Quiz für Lektion X hinzu` -- `[Lesson-3] Rechtschreibfehler im Terrarium-Projekt beheben` -- `[Translation] Füge Spanisch-Übersetzung für Lektion 5 hinzu` -- `[Docs] Aktualisiere Setup-Anweisungen` +Verwende klare, beschreibende Titel, die den Änderungsbereich angeben: +- `[Quiz-app] Neues Quiz für Lektion X hinzufügen` +- `[Lesson-3] Rechtschreibfehler im Terrarium-Projekt korrigieren` +- `[Translation] Spanische Übersetzung für Lektion 5 hinzufügen` +- `[Docs] Setup-Anweisungen aktualisieren` -### Erforderliche Prüfungen +### Erforderliche Checks -Vor dem PR-Einreichen: +Vor dem Einreichen eines PR: -1. **Codequalität**: - - Führe `npm run lint` in betroffenen Projektverzeichnissen aus - - Behebe alle Lint-Fehler und Warnungen +1. **Codequalität**: + - Führe `npm run lint` in betroffenen Projektverzeichnissen aus + - Behebe alle Linting-Fehler und Warnungen -2. **Build-Verifikation**: - - Führe `npm run build` falls zutreffend aus - - Sicherstellen, dass keine Build-Fehler auftreten +2. **Build-Verifikation**: + - Führe `npm run build` falls zutreffend aus + - Stelle sicher, dass keine Build-Fehler auftreten -3. **Link-Validierung**: - - Teste alle Markdown-Links - - Verifiziere Bildreferenzen +3. **Link-Validierung**: + - Teste alle Markdown-Links + - Überprüfe Bildreferenzen -4. **Inhaltsprüfung**: - - Korrekturlesen von Rechtschreibung und Grammatik - - Sicherstellen, dass Codebeispiele korrekt und didaktisch sind - - Übersetzungen auf Bedeutungsgenauigkeit prüfen +4. **Inhaltsüberprüfung**: + - Lektorat auf Rechtschreibung und Grammatik + - Stelle sicher, dass Codebeispiele korrekt und didaktisch sind + - Prüfe, dass Übersetzungen den Originalinhalt richtig wiedergeben ### Beitragspflichten -- Zustimmung zur Microsoft CLA (automatische Prüfung beim ersten PR) -- Befolgung des [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) -- Details in [CONTRIBUTING.md](./CONTRIBUTING.md) -- Verweise auf Issue-Nummern im PR-Beschreibungstext falls zutreffend +- D Zustimmung zur Microsoft CLA (automatische Prüfung beim ersten PR) +- Folge dem [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) +- Siehe [CONTRIBUTING.md](./CONTRIBUTING.md) für detaillierte Richtlinien +- Verweise Issue-Nummern im PR-Beschreibung, falls zutreffend ### Review-Prozess -- PRs werden von Maintainer- und Community-Mitgliedern geprüft -- Bildungsklarheit hat Priorität -- Codebeispiele sollten aktuellen Best Practices entsprechen -- Übersetzungen auf Genauigkeit und kulturelle Angemessenheit geprüft +- PRs werden von Maintainer:innen und Community geprüft +- Bildnerische Klarheit hat Priorität +- Codebeispiele sollen aktuellen Best Practices folgen +- Übersetzungen werden auf Genauigkeit und kulturelle Angemessenheit geprüft ## Übersetzungssystem -### Automatisierte Übersetzung +### Automatische Übersetzung -- Verwendet GitHub Actions mit co-op-translator Workflow -- Übersetzt automatisiert in über 50 Sprachen -- Quell-Dateien in Hauptverzeichnissen -- Übersetzungen in `translations/{language-code}/` Verzeichnissen +- Nutzt GitHub Actions mit co-op-translator Workflow +- Übersetzt automatisch in über 50 Sprachen +- Quelldateien in Hauptverzeichnissen +- Übersetzte Dateien in `translations/{language-code}/` -### Manuelle Verbesserungen an Übersetzungen +### Manuelle Verbesserungen der Übersetzung hinzufügen -1. Datei in `translations/{language-code}/` finden -2. Verbesserungen vornehmen, Struktur bewahren -3. Sicherstellen, dass Codebeispiele funktionsfähig bleiben -4. Lokalisierte Quizinhalte testen +1. Finde Datei in `translations/{language-code}/` +2. Nimm Verbesserungen vor, Struktur soll erhalten bleiben +3. Sicherstellen, dass Codebeispiele funktionsfähig bleiben +4. Teste ggf. Quiz-Inhalte in Lokalisation ### Übersetzungs-Metadaten -Übersetzte Dateien enthalten Metadaten-Header: +Übersetzte Dateien enthalten Meta-Daten-Header: ```markdown ``` - + ## Debugging und Fehlerbehebung ### Häufige Probleme -**Quiz-App startet nicht:** -- Prüfe Node.js Version (v14+ empfohlen) -- Lösche `node_modules` und `package-lock.json`, führe `npm install` erneut aus -- Prüfe Port-Konflikte (Standard: Vite nutzt Port 5173) +**Quiz-App startet nicht**: +- Prüfe Node.js-Version (v14+ empfohlen) +- Lösche `node_modules` und `package-lock.json`, führe `npm install` erneut aus +- Prüfe Port-Konflikte (standardmäßig Vite Port 5173) -**API-Server startet nicht:** -- Node.js Version mindestens v10 sicherstellen -- Prüfe, ob Port bereits belegt ist -- Alle Abhängigkeiten mit `npm install` installieren +**API-Server startet nicht**: +- Stelle sicher, dass Node.js Version >=10 ist +- Prüfe, ob Port bereits belegt ist +- Stelle sicher, dass alle Abhängigkeiten mit `npm install` installiert sind -**Browser-Erweiterung lädt nicht:** -- Prüfe Manifest.json auf korrekte Formatierung -- Browser-Konsole auf Fehler prüfen -- Browser-spezifische Installationshinweise beachten +**Browser-Erweiterung lädt nicht**: +- Prüfe, ob manifest.json korrekt formatiert ist +- Schau in die Browser-Konsole auf Fehler +- Folge browserspezifischen Installationsanweisungen -**Python Chat-Projekt Probleme:** -- OpenAI-Paket installiert? `pip install openai` -- Umgebungsvariable GITHUB_TOKEN gesetzt? -- Zugriff auf GitHub Models überprüft? +**Probleme mit Python Chat-Projekt**: +- Stelle sicher, dass OpenAI-Paket installiert ist: `pip install openai` +- Prüfe, ob Umgebungsvariable GITHUB_TOKEN gesetzt ist +- Prüfe GitHub Models-Zugriffsrechte -**Docsify liefert keine Docs aus:** -- docsify-cli global installieren: `npm install -g docsify-cli` -- Aus dem Root-Verzeichnis starten -- Prüfen, ob `docs/_sidebar.md` existiert +**Docsify liefert keine Dokumentation aus**: +- Installiere docsify-cli global: `npm install -g docsify-cli` +- Starte im Root-Verzeichnis des Repos +- Stelle sicher, dass `docs/_sidebar.md` existiert -### Entwicklungstipps +### Tipps zur Entwicklungsumgebung -- Nutze VS Code mit Live Server Erweiterung für HTML-Projekte -- Installiere ESLint und Prettier Extensions für konsistente Formatierung -- Verwende Browser DevTools zum Debuggen von JavaScript -- Für Vue-Projekte Vue DevTools Browser Extension installieren +- Verwende VS Code mit Live Server-Erweiterung für HTML-Projekte +- Installiere ESLint und Prettier Erweiterungen für konsistente Formatierung +- Nutze Browser DevTools zum Debuggen von JavaScript +- Für Vue-Projekte: Installiere Vue DevTools Browser Erweiterung -### Performance-Aspekte +### Performance-Überlegungen -- Große Anzahl übersetzter Dateien (50+ Sprachen) führt zu großen Klonen -- Nutze shallow clone, wenn nur mit Inhalten gearbeitet wird: `git clone --depth 1` -- Übersetzungen bei englischer Bearbeitung von Suchen ausschließen -- Build-Prozesse können beim ersten Mal langsam sein (npm install, Vite build) +- Große Anzahl übersetzter Dateien (50+ Sprachen) führt zu großen Vollklonen +- Verwende flachen Klon wenn nur Inhalt bearbeitet wird: `git clone --depth 1` +- Schließe Übersetzungen von Suchvorgängen aus, wenn du an englischen Inhalten arbeitest +- Build-Prozesse können beim ersten Lauf langsam sein (npm install, Vite Build) -## Sicherheitsaspekte +## Sicherheitsüberlegungen ### Umgebungsvariablen -- API-Schlüssel niemals im Repository speichern -- `.env` Dateien nutzen (bereits in `.gitignore` enthalten) -- Benötigte Umgebungsvariablen in Projekt-README dokumentieren +- API-Schlüssel dürfen niemals im Repository hinterlegt werden +- Verwende `.env`-Dateien (schon in `.gitignore` enthalten) +- Dokumentiere benötigte Umgebungsvariablen in Projekt-READMEs ### Python-Projekte -- Virtuelle Umgebungen verwenden: `python -m venv venv` -- Abhängigkeiten aktuell halten -- GitHub-Tokens minimal erforderliche Rechte geben +- Nutze virtuelle Umgebungen: `python -m venv venv` +- Halte Abhängigkeiten aktuell +- GitHub-Tokens sollten minimale erforderliche Berechtigungen haben -### Zugang zu GitHub Models +### GitHub Models Zugriff -- Personal Access Tokens (PAT) für GitHub Models erforderlich -- Tokens als Umgebungsvariablen speichern -- Keine Tokens oder Credentials commiten +- Personal Access Tokens (PAT) sind für GitHub Models erforderlich +- Tokens sollten als Umgebungsvariablen gespeichert werden +- Tokens oder Zugangsdaten niemals committen -## Weitere Hinweise +## Zusätzliche Hinweise ### Zielgruppe -- Totale Anfänger in der Webentwicklung -- Studenten und autodidaktische Lernende -- Lehrende, die das Curriculum im Unterricht verwenden -- Inhalte sind auf Zugänglichkeit und graduelles Kompetenzaufbau ausgelegt +- Absolute Anfänger in der Webentwicklung +- Studierende und autodidaktische Lernende +- Lehrkräfte, die das Curriculum im Unterricht verwenden +- Inhalte sind auf Barrierefreiheit und schrittweise Kompetenzentwicklung ausgelegt ### Pädagogische Philosophie -- Projektbasierter Lernansatz -- Häufige Wissensüberprüfungen (Quizze) -- Praktische Programmierübungen -- Beispiele aus realen Anwendungsfällen -- Fokus auf Grundlagen vor Frameworks +- Projektbasiertes Lernen +- Regelmäßige Wissensüberprüfungen (Quizze) +- Praxisorientierte Coding-Übungen +- Beispiele aus der realen Welt +- Fokus auf Grundlagen vor Frameworks -### Repository-Pflege +### Repository-Wartung -- Aktive Community von Lernenden und Mitwirkenden -- Regelmäßige Aktualisierung der Abhängigkeiten und Inhalte -- Beobachtung von Issues und Diskussionen durch Maintainer -- Übersetzungsupdates automatisiert über GitHub Actions +- Aktive Community aus Lernenden und Beitragenden +- Regelmäßige Updates von Abhängigkeiten und Inhalten +- Probleme und Diskussionen werden von Maintainer:innen überwacht +- Übersetzungsupdates automatisiert via GitHub Actions ### Verwandte Ressourcen -- [Microsoft Learn Module](https://docs.microsoft.com/learn/) -- [Student Hub Ressourcen](https://docs.microsoft.com/learn/student-hub/) -- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) empfohlen für Lernende -- Zusätzliche Kurse: Generative KI, Data Science, ML, IoT Curricula verfügbar +- [Microsoft Learn Module](https://docs.microsoft.com/learn/) +- [Student Hub Ressourcen](https://docs.microsoft.com/learn/student-hub/) +- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) empfohlen für Lernende +- Zusätzliche Kurse: Generative KI, Data Science, ML, IoT Curricula verfügbar ### Arbeit mit spezifischen Projekten -Für detaillierte Anleitungen zu einzelnen Projekten siehe README-Dateien in: -- `quiz-app/README.md` - Vue 3 Quiz-Anwendung -- `7-bank-project/README.md` - Banking-Anwendung mit Authentifizierung -- `5-browser-extension/README.md` - Browsererweiterungsentwicklung -- `6-space-game/README.md` - Canvas-basiertes Spiel -- `9-chat-project/README.md` - KI-Chat-Assistent Projekt +Für detaillierte Anweisungen zu einzelnen Projekten siehe README-Dateien in: +- `quiz-app/README.md` - Vue 3 Quiz-Anwendung +- `7-bank-project/README.md` - Banking-Anwendung mit Authentifizierung +- `5-browser-extension/README.md` - Browser-Erweiterungsentwicklung +- `6-space-game/README.md` - Canvas-basiertes Spiel +- `9-chat-project/README.md` - KI-Chat-Assistent Projekt ### Monorepo-Struktur -Obwohl kein traditionelles Monorepo, enthält dieses Repository mehrere unabhängige Projekte: -- Jede Lektion ist eigenständig -- Projekte teilen keine Abhängigkeiten -- Arbeit an einzelnen Projekten ohne Beeinflussung anderer möglich -- Komplettes Repository klonen für das vollständige Curriculum-Erlebnis +Obgleich kein klassisches Monorepo, enthält dieses Repository mehrere unabhängige Projekte: +- Jede Lektion ist autark +- Projekte teilen keine Abhängigkeiten +- Arbeit an einzelnen Projekten ohne Einfluss auf andere +- Gesamtes Repo klonen für das komplette Curriculum-Erlebnis --- **Haftungsausschluss**: -Dieses Dokument wurde mit dem KI-Übersetzungsdienst [Co-op Translator](https://github.com/Azure/co-op-translator) übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner Ursprungssprache gilt als maßgebliche Quelle. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die sich aus der Verwendung dieser Übersetzung ergeben. +Dieses Dokument wurde mit dem KI-Übersetzungsdienst [Co-op Translator](https://github.com/Azure/co-op-translator) übersetzt. Obwohl wir Genauigkeit anstreben, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner Ursprungssprache gilt als maßgebliche Quelle. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die durch die Verwendung dieser Übersetzung entstehen. \ No newline at end of file diff --git a/translations/ru/.co-op-translator.json b/translations/ru/.co-op-translator.json index b369e3239..3e43600d7 100644 --- a/translations/ru/.co-op-translator.json +++ b/translations/ru/.co-op-translator.json @@ -493,7 +493,7 @@ }, "AGENTS.md": { "original_hash": "a362efd06d64d4134a0cfe8515a86d34", - "translation_date": "2026-04-06T17:38:08+00:00", + "translation_date": "2026-04-20T15:38:53+00:00", "source_file": "AGENTS.md", "language_code": "ru" }, diff --git a/translations/ru/AGENTS.md b/translations/ru/AGENTS.md index 0e68517ba..9a4c60c92 100644 --- a/translations/ru/AGENTS.md +++ b/translations/ru/AGENTS.md @@ -2,27 +2,27 @@ ## Обзор проекта -Это репозиторий учебной программы для обучения основам веб-разработки для начинающих. Учебная программа представляет собой комплексный 12-недельный курс, разработанный Microsoft Cloud Advocates, включающий 24 практических урока по JavaScript, CSS и HTML. +Это репозиторий учебной программы для обучения основам веб-разработки для начинающих. Учебная программа — комплексный 12-недельный курс, разработанный Microsoft Cloud Advocates, включающий 24 практических урока по JavaScript, CSS и HTML. -### Основные компоненты +### Ключевые компоненты -- **Образовательный контент**: 24 структурированных урока, организованных в проектные модули -- **Практические проекты**: Террариум, игра на набор текста, расширение браузера, космическая игра, банковское приложение, редактор кода и AI чат-помощник +- **Учебный контент**: 24 структурированных урока, организованных в проектно-ориентированные модули +- **Практические проекты**: Террариум, Игра на скорость набора текста, Расширение браузера, Космическая игра, Банковское приложение, Редактор кода и AI чат-ассистент - **Интерактивные викторины**: 48 викторин по 3 вопроса каждая (до и после урока) -- **Многоязыковая поддержка**: Автоматический перевод на более чем 50 языков с помощью GitHub Actions +- **Поддержка нескольких языков**: Автоматический перевод на 50+ языков через GitHub Actions - **Технологии**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (для AI проектов) ### Архитектура -- Образовательный репозиторий с структурой, основанной на уроках +- Учебный репозиторий с структурой на основе уроков - Каждая папка урока содержит README, примеры кода и решения -- Отдельные проекты в отдельных каталогах (quiz-app, разные проекты уроков) +- Самостоятельные проекты в отдельных каталогах (quiz-app, разные уроки проектов) - Система перевода с использованием GitHub Actions (co-op-translator) -- Документация подается через Docsify и доступна в формате PDF +- Документация предоставляется через Docsify и доступна в формате PDF ## Команды для настройки -Этот репозиторий предназначен преимущественно для изучения образовательного контента. Для работы с конкретными проектами: +Этот репозиторий предназначен в первую очередь для изучения учебного контента. Для работы с конкретными проектами: ### Основная настройка репозитория @@ -31,17 +31,17 @@ git clone https://github.com/microsoft/Web-Dev-For-Beginners.git cd Web-Dev-For-Beginners ``` -### Настройка викторины (Vue 3 + Vite) +### Настройка Quiz App (Vue 3 + Vite) ```bash cd quiz-app npm install npm run dev # Запустить сервер разработки -npm run build # Сборка для производства +npm run build # Сборка для продакшена npm run lint # Запустить ESLint ``` -### API банковского проекта (Node.js + Express) +### API проекта банка (Node.js + Express) ```bash cd 7-bank-project/api @@ -51,12 +51,12 @@ npm run lint # Запустить ESLint npm run format # Отформатировать с помощью Prettier ``` -### Проекты расширений браузера +### Проекты расширения браузера ```bash cd 5-browser-extension/solution npm install -# Следуйте инструкциям по загрузке расширения, специфичным для браузера +# Следуйте инструкциям по загрузке расширений, специфичным для браузера ``` ### Проекты космической игры @@ -67,7 +67,7 @@ npm install # Откройте index.html в браузере или используйте Live Server ``` -### Проект чата (Python backend) +### Проект чата (Backend на Python) ```bash cd 9-chat-project/solution/backend/python @@ -83,60 +83,60 @@ python api.py 1. **Сделайте форк репозитория** в ваш аккаунт GitHub 2. **Клонируйте ваш форк** локально 3. **Создайте новую ветку** для ваших изменений -4. Внесите изменения в содержимое уроков или примеры кода -5. Протестируйте любые изменения кода в соответствующих каталогах проектов -6. Отправьте pull-запросы согласно руководству по внесению изменений +4. Вносите изменения в контент уроков или примеры кода +5. Тестируйте изменённый код в соответствующих папках проектов +6. Отправьте pull request согласно правилам вклада ### Для учащихся 1. Форкните или клонируйте репозиторий -2. Переходите к каталогам уроков по порядку +2. Последовательно переходите в папки уроков 3. Читайте README для каждого урока -4. Пройдите викторины до уроков на https://ff-quizzes.netlify.app/web/ -5. Проработайте примеры кода в каталоге уроков -6. Выполните задания и челленджи -7. Пройдите викторины после уроков +4. Проходите викторины до урока на https://ff-quizzes.netlify.app/web/ +5. Работайте с примерами кода в папках уроков +6. Выполняйте задания и практические задачи +7. Проходите викторины после урока ### Живая разработка - **Документация**: Запустите `docsify serve` в корне (порт 3000) -- **Викторина**: Запустите `npm run dev` в каталоге quiz-app -- **Проекты**: Используйте расширение VS Code Live Server для HTML проектов -- **API проекты**: Запустите `npm start` в соответствующих папках с API +- **Quiz App**: Запустите `npm run dev` в папке quiz-app +- **Проекты**: Используйте расширение VS Code Live Server для HTML-проектов +- **API-проекты**: Запустите `npm start` в соответствующих директориях API ## Инструкции по тестированию -### Тестирование викторины +### Тестирование Quiz App ```bash cd quiz-app -npm run lint # Проверить проблемы со стилем кода +npm run lint # Проверить наличие проблем со стилем кода npm run build # Проверить успешность сборки ``` -### Тестирование банковского API +### Тестирование API банка ```bash cd 7-bank-project/api -npm run lint # Проверить наличие проблем со стилем кода -node server.js # Убедиться, что сервер запускается без ошибок +npm run lint # Проверить проблемы со стилем кода +node server.js # Проверить, что сервер запускается без ошибок ``` ### Общий подход к тестированию -- Это образовательный репозиторий без полноценных автоматических тестов -- Ручное тестирование фокусируется на: +- Это учебный репозиторий без комплексных автоматических тестов +- Ручное тестирование сфокусировано на: - Запуске примеров кода без ошибок - Работе ссылок в документации - - Успешном сборке проектов - - Соответствии примеров рекомендуемым практикам + - Успешной сборке проектов + - Соответствии примеров кода лучшим практикам ### Проверки перед отправкой -- Запустите `npm run lint` в директориях с package.json -- Проверьте валидность markdown ссылок +- Запустите `npm run lint` в папках с package.json +- Проверьте валидность markdown-ссылок - Тестируйте примеры кода в браузере или Node.js -- Удостоверьтесь, что переводы сохраняют правильную структуру +- Убедитесь, что переводы сохраняют правильную структуру ## Руководство по стилю кода @@ -144,139 +144,139 @@ node server.js # Убедиться, что сервер запускает - Используйте современный синтаксис ES6+ - Следуйте стандартным конфигурациям ESLint в проектах -- Используйте понятные имена переменных и функций для учебной ясности -- Добавляйте комментарии, объясняющие концепции для учащихся -- Форматируйте код с помощью Prettier там, где настроено +- Используйте понятные имена переменных и функций для обучающей ясности +- Добавляйте комментарии с объяснениями концепций для учащихся +- Форматируйте код с помощью Prettier, если настроено ### HTML/CSS - Семантические элементы HTML5 - Принципы адаптивного дизайна -- Четкие соглашения по именованию классов -- Комментарии, объясняющие CSS-методы для учащихся +- Чёткие соглашения по именованию классов +- Комментарии, объясняющие CSS-техники для учащихся ### Python -- Следуйте стилю PEP 8 -- Понятные, образовательные примеры кода -- Подсказки типов, полезные для обучения +- Стиль по PEP 8 +- Чистые, обучающие примеры кода +- Аннотации типов там, где полезно для обучения ### Документация в Markdown -- Четкая иерархия заголовков +- Чёткая иерархия заголовков - Блоки кода с указанием языка - Ссылки на дополнительные ресурсы -- Скриншоты и изображения в папках `images/` -- Альтернативный текст для изображений для доступности +- Скриншоты и изображения в каталогах `images/` +- Атрибуты alt для изображений для доступности ### Организация файлов - Уроки пронумерованы последовательно (1-getting-started-lessons, 2-js-basics и т.д.) -- В каждом проекте есть папки `solution/` и часто `start/` или `your-work/` +- Каждый проект имеет каталог `solution/` и часто `start/` или `your-work/` - Изображения хранятся в папках `images/` каждого урока -- Переводы располагаются в структуре `translations/{language-code}/` +- Переводы находятся в структуре `translations/{language-code}/` -## Сборка и развертывание +## Сборка и деплой -### Развертывание викторины (Azure Static Web Apps) +### Деплой Quiz App (Azure Static Web Apps) -Викторина настроена для развертывания на Azure Static Web Apps: +quiz-app настроен для деплоя в Azure Static Web Apps: ```bash cd quiz-app -npm run build # Создаёт папку dist/ -# Развёртывание через workflow GitHub Actions при push в main +npm run build # Создает папку dist/ +# Выполняет деплой через workflow GitHub Actions при пуше в main ``` Конфигурация Azure Static Web Apps: - **Расположение приложения**: `/quiz-app` -- **Расположение вывода**: `dist` +- **Расположение сборки**: `dist` - **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` ### Генерация PDF документации ```bash npm install # Установить docsify-to-pdf -npm run convert # Создать PDF из документации +npm run convert # Сгенерировать PDF из docs ``` -### Документация в Docsify +### Документация Docsify ```bash -npm install -g docsify-cli # Установите Docsify глобально -docsify serve # Запустите на localhost:3000 +npm install -g docsify-cli # Установить Docsify глобально +docsify serve # Запустить сервер на localhost:3000 ``` -### Сборка по проектам +### Сборки для отдельных проектов -В каждом проекте может быть свой процесс сборки: -- Vue проекты: `npm run build` создает production сборки -- Статические проекты: сборка не требуется, файлы обслуживаются напрямую +Каждая папка проекта может иметь собственный процесс сборки: +- Vue проекты: `npm run build` создаёт продакшен-бандлы +- Статические проекты: сборка не требуется, файлы подаются напрямую ## Руководство по pull request ### Формат заголовка Используйте ясные, описательные заголовки, указывающие область изменений: -- `[Quiz-app] Добавлен новый тест для урока X` -- `[Lesson-3] Исправлена опечатка в проекте террариума` -- `[Translation] Добавлен испанский перевод для урока 5` -- `[Docs] Обновлены инструкции по настройке` +- `[Quiz-app] Добавить новую викторину для урока X` +- `[Lesson-3] Исправить опечатку в проекте террариума` +- `[Translation] Добавить испанский перевод для урока 5` +- `[Docs] Обновить инструкции по настройке` ### Требуемые проверки Перед отправкой PR: 1. **Качество кода**: - - Запустите `npm run lint` в затронутых проектах - - Исправьте все ошибки и предупреждения линтера + - Запустите `npm run lint` в затронутых папках проекта + - Исправьте все ошибки и предупреждения linter 2. **Проверка сборки**: - Запустите `npm run build`, если применимо - Убедитесь в отсутствии ошибок сборки 3. **Проверка ссылок**: - - Проверьте все markdown ссылки - - Убедитесь, что изображения отображаются корректно + - Протестируйте все markdown-ссылки + - Проверьте работу ссылок на изображения 4. **Проверка содержимого**: - Проверьте орфографию и грамматику - - Убедитесь в корректности и образовательной ценности примеров кода - - Дважды проверьте точность переводов + - Убедитесь, что примеры кода корректны и образовательны + - Проверьте точность переводов -### Требования к контрибьюциям +### Требования к вкладу -- Согласие с CLA Microsoft (автоматическая проверка при первом PR) -- Следование [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) +- Подтвердите соглашение с Microsoft CLA (автоматическая проверка при первом PR) +- Следуйте [Кодексу поведения Microsoft Open Source](https://opensource.microsoft.com/codeofconduct/) - См. [CONTRIBUTING.md](./CONTRIBUTING.md) для подробных инструкций -- При необходимости указывайте номера issues в описании PR +- Указывайте номера issue в описании PR при необходимости -### Процесс рецензирования +### Процесс ревью -- PR рассматриваются мейнтейнерами и сообществом +- PR ревью проводят мейнтэйнеры и сообщество - Приоритет — образовательная ясность -- Примеры кода должны соответствовать актуальным лучшим практикам -- Переводы проверяются на точность и культурную корректность +- Примеры кода должны соответствовать современным лучшим практикам +- Переводы проверяются на точность и культурную уместность ## Система перевода ### Автоматический перевод - Используется GitHub Actions с workflow co-op-translator -- Переводит автоматически на более 50 языков +- Переводит автоматически на 50+ языков - Исходные файлы в основных каталогах -- Переведённые файлы в папках `translations/{language-code}/` +- Переводы в каталогах `translations/{language-code}/` -### Добавление вручную улучшений переводов +### Добавление ручных улучшений перевода 1. Найдите файл в `translations/{language-code}/` 2. Внесите улучшения, сохраняя структуру -3. Проверьте, что примеры кода работают -4. Протестируйте локализованный контент викторин +3. Убедитесь, что примеры кода работают +4. Проверьте локализованный контент викторин -### Мета-информация о переводе +### Метаданные перевода -Переведённые файлы включают мета-заголовок: +Переведённые файлы содержат заголовок с метаданными: ```markdown **Отказ от ответственности**: -Этот документ был переведен с помощью сервиса автоматического перевода [Co-op Translator](https://github.com/Azure/co-op-translator). Несмотря на наши усилия по обеспечению точности, имейте в виду, что автоматические переводы могут содержать ошибки или неточности. Исходный документ на его оригинальном языке следует считать авторитетным источником. Для критически важной информации рекомендуется использовать профессиональный перевод, выполненный человеком. Мы не несем ответственности за любые недоразумения или неправильные толкования, возникающие в результате использования данного перевода. +Этот документ был переведен с помощью сервиса автоматического перевода [Co-op Translator](https://github.com/Azure/co-op-translator). Несмотря на наши усилия по обеспечению точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на исходном языке следует считать авторитетным источником. Для критически важной информации рекомендуется профессиональный перевод носителем языка. Мы не несем ответственности за любые недоразумения или неправильные толкования, возникающие в результате использования этого перевода. \ No newline at end of file