chore(i18n): sync translations with latest source changes (chunk 1/1, 9 changes)

pull/1774/head
localizeflow[bot] 6 months ago
parent 62372a19c0
commit 0b6b7a0605

@ -1,7 +1,7 @@
{ {
"1-getting-started-lessons/1-intro-to-programming-languages/README.md": { "1-getting-started-lessons/1-intro-to-programming-languages/README.md": {
"original_hash": "bec5e35642176d9e483552bfc82996d8", "original_hash": "d5eeb6e975b5864d8da52d4a41941f8d",
"translation_date": "2026-03-06T16:14:33+00:00", "translation_date": "2026-03-27T22:05:42+00:00",
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md", "source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md",
"language_code": "fa" "language_code": "fa"
}, },
@ -493,7 +493,7 @@
}, },
"AGENTS.md": { "AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34", "original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-03-06T16:28:31+00:00", "translation_date": "2026-03-27T22:13:41+00:00",
"source_file": "AGENTS.md", "source_file": "AGENTS.md",
"language_code": "fa" "language_code": "fa"
}, },

@ -2,23 +2,23 @@
## نمای کلی پروژه ## نمای کلی پروژه
این یک مخزن آموزشی برای آموزش مبانی توسعه وب به مبتدیان است. این دوره آموزشی جامع شامل ۱۲ هفته است که توسط تیم Microsoft Cloud Advocates توسعه یافته و شامل ۲۴ درس عملی درباره JavaScript، CSS و HTML می‌باشد. این یک مخزن برنامه درسی آموزشی برای آموزش مبانی توسعه وب به مبتدیان است. این برنامه درسی یک دوره جامع ۱۲ هفته‌ای توسعه یافته توسط مدافعان ابر مایکروسافت است که شامل ۲۴ درس عملی در زمینه‌های JavaScript، CSS و HTML می‌باشد.
### اجزای کلیدی ### اجزای کلیدی
- **محتوای آموزشی**: ۲۴ درس سازمان‌دهی شده به صورت ماژول‌های پروژه‌محور - **محتوای آموزشی**: ۲۴ درس سازمان‌یافته در قالب ماژول‌های پروژه‌محور
- **پروژه‌های عملی**: تراریوم، بازی تایپ، افزونه مرورگر، بازی فضایی، برنامه بانکی، ویرایشگر کد و دستیار چت هوش مصنوعی - **پروژه‌های عملی**: Terrarium، بازی تایپ، افزونه مرورگر، بازی فضایی، برنامه بانکداری، ویرایشگر کد، و دستیار چت هوش مصنوعی
- **آزمون‌های تعاملی**: ۴۸ آزمون با ۳ سوال هر کدام (ارزیابی قبل و بعد از درس) - **آزمون‌های تعاملی**: ۴۸ آزمون با ۳ سوال هر کدام (ارزیابی قبل و بعد درس)
- **پشتیبانی چندزبانه**: ترجمه خودکار به بیش از ۵۰ زبان با استفاده از GitHub Actions - **پشتیبانی چندزبانه**: ترجمه‌های خودکار به بیش از ۵۰ زبان از طریق GitHub Actions
- **فناوری‌ها**: HTML، CSS، JavaScript، Vue.js 3، Vite، Node.js، Express، Python (برای پروژه‌های هوش مصنوعی) - **فناوری‌ها**: HTML، CSS، JavaScript، Vue.js 3، Vite، Node.js، Express، Python (برای پروژه‌های هوش مصنوعی)
### معماری ### معماری
- مخزن آموزشی با ساختار مبتنی بر درسها - مخزن آموزشی با ساختار مبتنی بر درس
- هر فولدر درس شامل README، مثال‌های کد و راه‌حل‌ها است - هر پوشه درس شامل README، نمونه کدها و راه‌حل‌ها
- پروژه‌های مستقل در دایرکتوری‌های جداگانه (quiz-app، پروژه‌های مختلف درس‌ها) - پروژه‌های مستقل در دایرکتوری‌های جداگانه (quiz-app و پروژه‌های مختلف درس)
- سیستم ترجمه با استفاده از GitHub Actions (co-op-translator) - سیستم ترجمه با استفاده از GitHub Actions (co-op-translator)
- مستندات ارائه شده از طریق Docsify و قابل دسترسی به صورت PDF - مستندسازی ارائه شده توسط Docsify و قابل دسترس به صورت PDF
## دستورات راه‌اندازی ## دستورات راه‌اندازی
@ -31,7 +31,7 @@ git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
cd Web-Dev-For-Beginners cd Web-Dev-For-Beginners
``` ```
### راه‌اندازی برنامه آزمون (Vue 3 + Vite) ### راه‌اندازی اپلیکیشن آزمون (Vue 3 + Vite)
```bash ```bash
cd quiz-app cd quiz-app
@ -41,7 +41,7 @@ npm run build # ساخت برای تولید
npm run lint # اجرای ESLint npm run lint # اجرای ESLint
``` ```
### API پروژه بانکی (Node.js + Express) ### API پروژه بانک (Node.js + Express)
```bash ```bash
cd 7-bank-project/api cd 7-bank-project/api
@ -56,7 +56,7 @@ npm run format # قالب‌بندی با Prettier
```bash ```bash
cd 5-browser-extension/solution cd 5-browser-extension/solution
npm install npm install
# دستورالعمل‌های بارگذاری افزونه مخصوص مرورگر را دنبال کنید # دستورالعمل‌های بارگذاری افزونه خاص مرورگر را دنبال کنید
``` ```
### پروژه‌های بازی فضایی ### پروژه‌های بازی فضایی
@ -64,7 +64,7 @@ npm install
```bash ```bash
cd 6-space-game/solution cd 6-space-game/solution
npm install npm install
# فایل index.html را در مرورگر باز کنید یا از Live Server استفاده کنید # فایل index.html را در مرورگر باز کنید یا از سرور زنده استفاده کنید
``` ```
### پروژه چت (بک‌اند پایتون) ### پروژه چت (بک‌اند پایتون)
@ -72,7 +72,7 @@ npm install
```bash ```bash
cd 9-chat-project/solution/backend/python cd 9-chat-project/solution/backend/python
pip install openai pip install openai
# مقداردهی متغیر محیطی GITHUB_TOKEN # تنظیم متغیر محیطی GITHUB_TOKEN
python api.py python api.py
``` ```
@ -80,118 +80,118 @@ python api.py
### برای مشارکت‌کنندگان محتوا ### برای مشارکت‌کنندگان محتوا
1. **Fork** مخزن به حساب GitHub خود 1. **فورک کردن مخزن** در حساب GitHub خود
2. **Clone** کردن Fork روی سیستم محلی 2. **کلون کردن فورک** به صورت محلی
3. ایجاد شاخه جدید برای تغییرات 3. **ایجاد شاخه جدید** برای تغییرات
4. اعمال تغییرات در محتوا یا مثال‌های کد 4. اعمال تغییرات در محتوای درس یا نمونه کدها
5. تست تغییرات کد در دایرکتوری پروژه‌های مرتبط 5. تست تغییرات کد در دایرکتوری‌های پروژه مرتبط
6. ارسال Pull Request با رعایت دستورالعمل‌های مشارکت 6. ارسال درخواست‌های pull طبق دستورالعمل‌های مشارکت
### برای یادگیرندگان ### برای یادگیرندگان
1. Fork یا clone مخزن 1. فورک یا کلون کردن مخزن
2. به ترتیب به دایرکتوری‌های درس‌ها بروید 2. رفتن به دایرکتوری‌های درس به ترتیب
3. فایل‌های README هر درس را مطالعه کنید 3. مطالعه فایل‌های README هر درس
4. آزمون‌های قبل از درس را در https://ff-quizzes.netlify.app/web/ انجام دهید 4. انجام آزمون‌های قبل از درس در https://ff-quizzes.netlify.app/web/
5. مثال‌های کد در پوشه‌های درس را بررسی کنید 5. کار با نمونه کدهای داخل پوشه‌های درس
6. تکالیف و چالش‌ها را کامل کنید 6. تکمیل تمرین‌ها و چالش‌ها
7. آزمون‌های پس از درس را برگزار کنید 7. شرکت در آزمون‌های پس از درس
### توسعه به صورت زنده ### توسعه زنده
- **مستندات**: اجرای `docsify serve` در شاخه اصلی (پورت 3000) - **مستندسازی**: اجرای `docsify serve` در ریشه (پورت 3000)
- **برنامه آزمون**: اجرای `npm run dev` در دایرکتوری quiz-app - **اپلیکیشن آزمون**: اجرای `npm run dev` در دایرکتوری quiz-app
- **پروژه‌ها**: استفاده از افزونه VS Code Live Server برای پروژه‌های HTML - **پروژه‌ها**: استفاده از افزونه Live Server در VS Code برای پروژه‌های HTML
- **پروژه‌های API**: اجرای `npm start` در دایرکتوری‌های مربوط به API - **پروژه‌های API**: اجرای `npm start` در دایرکتوری‌های مربوطه
## دستورالعمل‌های تست ## دستورالعمل‌های تست
### تست برنامه آزمون ### تست اپلیکیشن آزمون
```bash ```bash
cd quiz-app cd quiz-app
npm run lint # بررسی مشکلات سبک کد npm run lint # بررسی مشکلات سبک کد
npm run build # تأیید موفقیت ساخت npm run build # اطمینان از موفقیت ساخت
``` ```
### تست API بانکی ### تست API بانک
```bash ```bash
cd 7-bank-project/api cd 7-bank-project/api
npm run lint # بررسی مسائل سبک کد npm run lint # بررسی مشکلات سبک کد
node server.js # تایید راه‌اندازی سرور بدون خطاها node server.js # اطمینان از شروع سرور بدون خطاها
``` ```
### رویکرد کلی تست ### رویکرد کلی تست
- این یک مخزن آموزشی است و تست‌های خودکار جامع ندارد - این مخزن آموزشی فاقد تست‌های خودکار جامع است
- تست دستی تمرکز دارد روی: - تست دستی بر موارد زیر تمرکز دارد:
- اجرای بدون خطا مثال‌های کد - اجرای بدون خطای نمونه کدها
- عملکرد صحیح لینک‌ها در مستندات - عملکرد صحیح لینک‌های مستندات
- ساخت پروژه‌ها به صورت موفقیت‌آمیز - کامپایل موفق پروژه‌ها
- رعایت بهترین شیوه‌ها در مثالها - پیروی نمونه‌ها از بهترین شیوهها
### بررسی‌های قبل از ارسال ### بررسی‌های پیش از ارسال
- اجرای `npm run lint` در دایرکتوری‌هایی که package.json دارند - اجرای `npm run lint` در دایرکتوری‌های دارای package.json
- اعتبارسنجی لینک‌های مارک‌داون - اطمینان از اعتبار لینک‌های markdown
- تست مثال‌های کد در مرورگر یا Node.js - تست نمونه کدها در مرورگر یا Node.js
- اطمینان از حفظ ساختار ترجمه‌ها - بررسی ساختار درست ترجمه‌ها
## دستورالعمل‌های سبک کد ## راهنمایی‌های سبک کدنویسی
### JavaScript ### جاوااسکریپت
- استفاده از نحو مدرن ES6+ - استفاده از نحو ES6+ مدرن
- پیروی از تنظیمات ESLint موجود در پروژه‌ها - پیروی از تنظیمات ESLint استاندارد پروژه‌ها
- نام‌گذاری متغیرها و توابع معنادار برای آموزش بهتر - استفاده از نام‌های معنادار متغیرها و توابع برای وضوح آموزشی
- افزودن کامنت جهت توضیح مفاهیم برای یادگیرندگان - افزودن کامنت‌های توضیحی برای مفاهیم
- فرمت کردن با Prettier در صورت تنظیم بودن - فرمت کد با Prettier در صورت تنظیم
### HTML/CSS ### HTML/CSS
- استفاده از المان‌های معنایی HTML5 - استفاده از عناصر معنایی HTML5
- اصول طراحی واکنش‌گرا - اصول طراحی واکنش‌گرا
- شیوه نام‌گذاری کلاس‌ها به صورت واضح - نام‌گذاری کلاس‌ها به صورت واضح
- کامنت‌های توضیحی روش‌های CSS برای یادگیرندگان - کامنت‌هایی برای توضیح تکنیک‌های CSS برای یادگیرندگان
### پایتون ### پایتون
- پیروی از دستورالعمل‌های سبک PEP 8 - پیروی از قوانین سبک PEP 8
- مثال‌های کد واضح و آموزشی - نمونه کدهای واضح و آموزشی
- استفاده از نوع‌دهی در مواقع لازم برای یادگیری - استفاده از تایپ هینت‌ها در صورت امکان و مفید بودن برای یادگیری
### مستندات مارک‌داون ### مستندسازی مارک‌داون
- سلسله مراتب شفاف عناوین - سلسله مراتب هدینگ واضح
- بلاک کد با مشخص کردن زبان - بلوک‌های کد با تعیین زبان
- لینک به منابع اضافی - لینک به منابع اضافی
- تصاویر و اسکرین‌شات‌ها در دایرکتوری `images/` - اسکرین‌شات‌ها و تصاویر داخل پوشه‌های `images/`
- متن جایگزین برای تصاویر جهت دسترسی‌پذیری - متن جایگزین برای تصاویر جهت دسترسی‌پذیری
### سازماندهی فایل‌ها ### سازماندهی فایل‌ها
- نام‌گذاری درس‌ها به صورت عددی متوالی (1-getting-started-lessons، 2-js-basics و غیره) - شماره‌گذاری درس‌ها به ترتیب (1-getting-started-lessons، 2-js-basics و غیره)
- هر پروژه شامل پوشه‌های `solution/` و معمولاً `start/` یا `your-work/` - هر پروژه دارای دایرکتوری‌های `solution/` و معمولاً `start/` یا `your-work/`
- تصاویر در پوشه‌های خاص هر درس واقع در `images/` ذخیره می‌شوند - تصاویر در پوشه‌های خاص آن درس در `images/` ذخیره می‌شوند
- ترجمه‌ها در ساختار `translations/{language-code}/` قرار دارند - ترجمه‌ها در ساختار `translations/{language-code}/` قرار دارند
## ساخت و استقرار ## ساخت و استقرار
### استقرار برنامه آزمون (Azure Static Web Apps) ### استقرار اپلیکیشن آزمون (Azure Static Web Apps)
برنامه quiz-app برای استقرار در Azure Static Web Apps پیکربندی شده است: اپلیکیشن quiz-app برای استقرار در Azure Static Web Apps تنظیم شده است:
```bash ```bash
cd quiz-app cd quiz-app
npm run build # پوشه dist/ ایجاد می‌کند npm run build # ایجاد پوشه dist/
# در هر بار پوش کردن به main با استفاده از گردش کار GitHub Actions مستقر می‌کند # استقرار از طریق گردش کار GitHub Actions هنگام فشار به شاخه main
``` ```
پیکربندی Azure Static Web Apps: پیکربندی Azure Static Web Apps:
- **مکان برنامه**: `/quiz-app` - **مکان برنامه**: `/quiz-app`
- **مکان خروجی**: `dist` - **مکان خروجی**: `dist`
- **جریان کاری**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` - **فرآیند کاری**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### تولید PDF مستندات ### تولید PDF مستندات
@ -200,83 +200,83 @@ npm install # نصب docsify-to-pdf
npm run convert # تولید PDF از docs npm run convert # تولید PDF از docs
``` ```
### مستندسازی Docsify ### مستندسازی با Docsify
```bash ```bash
npm install -g docsify-cli # نصب Docsify به صورت سراسری npm install -g docsify-cli # نصب Docsify به صورت سراسری
docsify serve # سرویس‌دهی در localhost:3000 docsify serve # سرویس‌دهی در localhost:3000
``` ```
### ساخت‌های خاص پروژه ### ساخت‌های مخصوص پروژه
هر دایرکتوری ممکن است فرایند ساخت مخصوص به خود را داشته باشد: هر دایرکتوری پروژه ممکن است روند ساخت خاص خود را داشته باشد:
- پروژه‌های Vue: اجرای `npm run build` برای تولید نسخه‌های نهایی - پروژه‌های Vue: اجرای `npm run build` بسته‌های پروداکشن ایجاد می‌کند
- پروژه‌های استاتیک: بدون گام ساخت، فایل‌ها مستقیماً سرو می‌شوند - پروژه‌های استاتیک: بدون مرحله ساخت، فایل‌ها مستقیماً سرو می‌شوند
## دستورالعمل‌های Pull Request ## دستورالعمل‌های ارسال Pull Request
### قالب عنوان ### قالب عنوان
از عناوین شفاف و توصیفی استفاده کنید که حوزه تغییر را مشخص کند: از عناوین واضح و توصیفی با اشاره به حوزه تغییر استفاده کنید:
- `[Quiz-app] افزودن آزمون جدید برای درس X` - `[Quiz-app] افزودن آزمون جدید برای درس X`
- `[Lesson-3] اصلاح اشتباه تایپی در پروژه تراریوم` - `[درس-3] اصلاح غلط املایی در پروژه terrarium`
- `[Translation] افزودن ترجمه اسپانیایی برای درس ۵` - `[ترجمه] افزودن ترجمه اسپانیایی برای درس 5`
- `[Docs] به‌روزرسانی دستورالعمل‌های راه‌اندازی` - `[مستندات] به‌روزرسانی دستورالعمل‌های راه‌اندازی`
### بررسی‌های مورد نیاز ### بررسی‌های اجباری
قبل از ارسال PR: قبل از ارسال PR:
1. **کیفیت کد**: 1. **کیفیت کد**:
- اجرای `npm run lint` در دایرکتوری‌های مرتبط - اجرای `npm run lint` در دایرکتوری‌های پروژه مربوطه
- رفع تمامی خطاها و هشدارهای lint - اصلاح تمام خطاها و هشدارهای lint
2. **تأیید ساخت**: 2. **تأیید ساخت**:
- اجرای `npm run build` در صورت نیاز - اجرای `npm run build` در صورت لزوم
- اطمینان از عدم وجود خطای ساخت - اطمینان از عدم وجود خطا در ساخت
3. **اعتبارسنجی لینک‌ها**: 3. **اعتبارسنجی لینک‌ها**:
- بررسی همه لینک‌های مارک‌داون - تست تمام لینک‌های markdown
- اطمینان از کارکرد ارجاعات تصاویر - اطمینان از عملکرد لینک تصاویر
4. **بازبینی محتوا**: 4. **بازبینی محتوا**:
- بازخوانی و بررسی املایی و دستوری - بازخوانی برای غلط‌های املایی و گرامری
- اطمینان از صحیح و آموزشی بودن مثال‌های کد - اطمینان از درستی و آموزشی بودن نمونه کدها
- تضمین دقیق بودن ترجمه‌ها و حفظ معنی اصلی - تأیید حفظ معنی اصلی ترجمه‌ها
### الزامات مشارکت ### نیازمندی‌های مشارکت
- موافقت با CLA مایکروسافت (بررسی خودکار در اولین PR) - توافق با CLA مایکروسافت (بررسی خودکار در اولین PR)
- رعایت [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) - پیروی از [کد رفتار منبع باز مایکروسافت](https://opensource.microsoft.com/codeofconduct/)
- مشاهده [CONTRIBUTING.md](./CONTRIBUTING.md) برای دستورالعمل‌های دقیق - مشاهده [CONTRIBUTING.md](./CONTRIBUTING.md) برای دستورالعمل‌های دقیق
- ارجاع به شماره مسائل در توضیحات PR در صورت وجود - ارجاع شماره مسائل در توضیحات PR در صورت لزوم
### روند بازبینی ### فرایند بازبینی
- PRها توسط نگهدارندگان و جامعه بازبینی می‌شوند - بازبینی PRها توسط نگهداران و جامعه
- وضوح آموزشی الویت دارد - اولویت به وضوح آموزشی
- مثال‌های کد باید بهترین شیوه‌ها را دنبال کنند - نمونه کدها باید بهترین شیوه‌های جاری را رعایت کنند
- ترجمه‌ها برای دقت و انطباق فرهنگی بازبینی می‌شوند - بررسی ترجمه‌ها برای دقت و مناسب بودن فرهنگی
## سیستم ترجمه ## سیستم ترجمه
### ترجمه خودکار ### ترجمه خودکار
- استفاده از GitHub Actions با جریان کاری co-op-translator - استفاده از GitHub Actions با workflow co-op-translator
- ترجمه خودکار به بیش از ۵۰ زبان - ترجمه خودکار به بیش از ۵۰ زبان
- فایل‌های منبع در دایرکتوری‌های اصلی - فایل‌های منبع در دایرکتوری‌های اصلی
- فایل‌های ترجمه شده در `translations/{language-code}/` - فایل‌های ترجمه شده در ساختار `translations/{language-code}/`
### افزودن بهبودهای ترجمه دستی ### افزودن بهبودهای ترجمه دستی
1. ورود به فایل در `translations/{language-code}/` 1. فایل را در `translations/{language-code}/` بیابید
2. اعمال بهبودها با حفظ ساختار 2. بهبودها را در حفظ ساختار اعمال کنید
3. اطمینان از عملکرد صحیح مثال‌های کد 3. اطمینان داشته باشید نمونه کدها عملکرد دارند
4. تست هر محتوای آزمون محلی شده 4. هر محتوای آزمون محلی‌شده را تست کنید
### فراداده ترجمه ### متادیتای ترجمه
فایل‌های ترجمه شده شامل هدر فراداده: فایل‌های ترجمه دارای هدر متادیتا هستند:
```markdown ```markdown
<!-- <!--
CO_OP_TRANSLATOR_METADATA: CO_OP_TRANSLATOR_METADATA:
@ -289,68 +289,68 @@ CO_OP_TRANSLATOR_METADATA:
--> -->
``` ```
## عیب‌یابی و رفع مشکلات ## اشکال‌زدایی و عیب‌یابی
### مشکلات متداول ### مشکلات رایج
**برنامه آزمون اجرا نمی‌شود**: **اپلیکیشن آزمون اجرا نمی‌شود**:
- نسخه Node.js را بررسی کنید (v14+ توصیه شده) - نسخه Node.js بررسی شود (v14+ توصیه می‌شود)
- حذف `node_modules` و `package-lock.json`، سپس اجرای دوباره `npm install` - حذف `node_modules` و `package-lock.json` سپس اجرای مجدد `npm install`
- بررسی تداخل پورتها (پیش‌فرض: Vite از پورت 5173 استفاده می‌کند) - بررسی تداخل پورت (پورت پیش‌فرض Vite برابر ۵۱۷۳ است)
**سرور API اجرا نمی‌شود**: **سرور API راه‌اندازی نمی‌شود**:
- اطمینان از حداقل نسخه Node.js (node >=10) - اطمینان از حداقل نسخه Node.js (node >=10)
- بررسی استفاده بودن پورت - بررسی استفاده بودن پورت
- اطمینان از نصب همه وابستگی‌ها با `npm install` - اطمینان از نصب تمامی وابستگی‌ها با `npm install`
**افزونه مرورگر لود نمی‌شود**: **افزونه مرورگر بارگذاری نمی‌شود**:
- بررسی صحت قالب manifest.json - بررسی قالب‌بندی صحیح manifest.json
- چک کردن کنسول مرورگر برای خطاها - مشاهده کنسول مرورگر برای خطاها
- دنبال کردن دستورالعمل نصب افزونه مرورگر خاص - پیروی از دستورالعمل نصب افزونه مطابق مرورگر
**مشکلات پروژه چت پایتون**: **مشکلات پروژه چت پایتون**:
- اطمینان از نصب پکیج OpenAI: `pip install openai` - نصب بسته OpenAI: `pip install openai`
- بررسی تنظیم متغیر محیطی GITHUB_TOKEN - تنظیم متغیر محیطی GITHUB_TOKEN
- بررسی مجوزهای دسترسی به مدل‌های GitHub - بررسی مجوزهای دسترسی به مدل‌های GitHub
**مستندات Docsify بارگیری نمی‌شود**: **عدم سرو مستندات Docsify**:
- نصب docsify-cli به صورت جهانی: `npm install -g docsify-cli` - نصب docsify-cli به صورت سراسری: `npm install -g docsify-cli`
- اجرای دستور از شاخه ریشه مخزن - اجرای دستور از دایرکتوری ریشه مخزن
- اطمینان از وجود فایل `docs/_sidebar.md` - اطمینان از وجود فایل `docs/_sidebar.md`
### نکات محیط توسعه ### نکات محیط توسعه
- استفاده از VS Code با افزونه Live Server برای پروژه‌های HTML - استفاده از VS Code با افزونه Live Server برای پروژه‌های HTML
- نصب افزونه‌های ESLint و Prettier برای قالب‌بندی یکنواخت - نصب افزونه‌های ESLint و Prettier برای فرمت یکنواخت
- استفاده از DevTools مرورگر برای اشکال‌زدایی JavaScript - استفاده از ابزارهای توسعه مرورگر برای اشکال‌زدایی جاوااسکریپت
- نصب افزونه Vue DevTools برای پروژه‌های Vue - نصب افزونه Vue DevTools برای پروژه‌های Vue
### ملاحظات عملکرد ### ملاحظات عملکرد
- تعداد زیاد فایل‌های ترجمه شده (بیش از ۵۰ زبان) باعث بزرگ شدن کلون کامل می‌شود - تعداد زیاد فایل‌های ترجمه شده (بیش از ۵۰ زبان) سبب حجم بزرگ کلون کامل می‌شود
- استفاده از کلون کم‌عمق در صورت کار صرفاً روی محتوا: `git clone --depth 1` - استفاده از کلون سطحی در صورت کار صرفاً با محتوا: `git clone --depth 1`
- حذف ترجمه‌ها از جستجو هنگام کار روی محتوای انگلیسی - حذف ترجمه‌ها از جستجو هنگام کار با محتوای انگلیسی
- فرایندهای ساخت ممکن است در اجرای اولیه کند باشند (npm install، ساخت Vite) - روندهای ساخت در اولین اجرا ممکن است کند باشند (npm install، ساخت Vite)
## ملاحظات امنیتی ## ملاحظات امنیتی
### متغیرهای محیطی ### متغیرهای محیطی
- کلیدهای API هرگز نباید در مخزن کامیت شوند - کلیدهای API نباید در مخزن کامیت شوند
- استفاده از فایل‌های `.env` (در `.gitignore` موجود است) - استفاده از فایل‌های `.env` (قبلاً در `.gitignore` قرار دارند)
- مستندسازی متغیرهای محیطی مورد نیاز در README پروژه‌ها - مستندسازی متغیرهای محیطی مورد نیاز در README پروژه‌ها
### پروژه‌های پایتون ### پروژه‌های پایتون
- استفاده از محیط‌های مجازی: `python -m venv venv` - استفاده از محیط‌های مجازی: `python -m venv venv`
- به‌روزرسانی مداوم وابستگی‌ها - نگه داشتن به‌روزرسانی وابستگی‌ها
- توکن‌های GitHub باید حداقل مجوزهای لازم را داشته باشند - توکن‌های GitHub باید حداقل مجوزهای لازم را داشته باشند
### دسترسی به مدل‌های GitHub ### دسترسی به مدل‌های GitHub
- توکن‌های Personal Access Token (PAT) برای مدل‌های GitHub لازم است - توکن‌های دسترسی شخصی (PAT) برای دسترسی به مدل‌ها لازم است
- توکن‌ها باید به صورت متغیر محیطی ذخیره شوند - توکن‌ها باید در متغیرهای محیطی ذخیره شوند
- هرگز توکن‌ها یا اطلاعات اعتبار را کامیت نکنید - هرگز توکن‌ها یا اطلاعات حساس را کامیت نکنید
## یادداشت‌های اضافی ## یادداشت‌های اضافی
@ -358,51 +358,51 @@ CO_OP_TRANSLATOR_METADATA:
- مبتدیان کامل در توسعه وب - مبتدیان کامل در توسعه وب
- دانش‌آموزان و یادگیرندگان خودآموز - دانش‌آموزان و یادگیرندگان خودآموز
- معلمانی که از این دوره در کلاس‌های درس استفاده می‌کنند - معلمانی که برنامه درسی را در کلاس تدریس می‌کنند
- محتوای طراحی شده برای دسترسی‌پذیری و ساخت مهارت تدریجی - محتوا به گونه‌ای طراحی شده که دسترسی‌پذیر و به صورت تدریجی مهارت‌ها را می‌سازد
### فلسفه آموزشی ### فلسفه آموزشی
- رویکرد یادگیری پروژه محور - رویکرد یادگیری مبتنی بر پروژه
- بررسی‌های دانش مکرر (آزمون‌ها) - بررسی مکرر دانش (آزمون‌ها)
- تمرین‌های عملی کد نویسی - تمرین‌های عملی برنامه‌نویسی
- مثال‌های کاربردی دنیای واقعی - مثال‌های کاربردی در دنیای واقعی
- تمرکز بر اصول قبل از فریم‌ورک‌ها - تأکید بر مبانی پیش از فریمورک‌ها
### نگهداری مخزن ### نگهداری مخزن
- جامعه فعال از یادگیرندگان و مشارکت‌کنندگان - جامعه فعالی از یادگیرندگان و مشارکت‌کنندگان
- به‌روزرسانی‌های منظم وابستگی‌ها و محتوا - به‌روزرسانی منظم وابستگی‌ها و محتوا
- نظارت نگهدارندگان بر مسائل و بحث‌ها - نظارت بر بحث‌ها و مسائل توسط نگه‌داران
- به‌روزرسانی ترجمه‌ها به صورت خودکار از طریق GitHub Actions - بروزرسانی ترجمه‌ها به‌طور خودکار توسط GitHub Actions
### منابع مرتبط ### منابع مرتبط
- [ماژول‌های Microsoft Learn](https://docs.microsoft.com/learn/) - [ماژول‌های Microsoft Learn](https://docs.microsoft.com/learn/)
- [منابع Student Hub](https://docs.microsoft.com/learn/student-hub/) - [مرکز دانش‌آموزان Student Hub](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) توصیه شده برای یادگیرندگان - [گیت‌هاب کوپایلوت GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) توصیهشده برای یادگیرندگان
- دوره‌های اضافی: هوش مصنوعی مولد، علوم داده، یادگیری ماشین، دوره‌های IoT موجود - دوره‌های اضافی: هوش مصنوعی مولد، علوم داده، یادگیری ماشین، برنامه درسی اینترنت اشیا
### کار با پروژه‌های مشخص ### کار با پروژه‌های مشخص
برای دستورالعمل‌های دقیق درباره پروژه‌های فردی به فایل README مراجعه کنید: برای دستورالعمل‌های دقیق درباره پروژه‌های فردی، به فایل‌های README در:
- `quiz-app/README.md` - برنامه آزمون Vue 3 - `quiz-app/README.md` - اپلیکیشن آزمون Vue 3
- `7-bank-project/README.md` - برنامه بانکی با احراز هویت - `7-bank-project/README.md` - برنامه بانکداری با احراز هویت
- `5-browser-extension/README.md` - توسعه افزونه مرورگر - `5-browser-extension/README.md` - توسعه افزونه مرورگر
- `6-space-game/README.md` - توسعه بازی مبتنی بر Canvas - `6-space-game/README.md` - توسعه بازی مبتنی بر Canvas
- `9-chat-project/README.md` - پروژه دستیار چت هوش مصنوعی - `9-chat-project/README.md` - پروژه دستیار چت AI
### ساختار مونو رپو ### ساختار مونو رپو
اگرچه این مخزن یک مونو رپو سنتی نیست، شامل چندین پروژه مستقل است: اگرچه این مخزن یک مونو رپوی سنتی نیست، شامل چند پروژه مستقل است:
- هر درس به صورت جداگانه مستقل است - هر درس خودکفا است
- پروژه‌ها وابستگی مشترک ندارند - پروژه‌ها وابستگی مشترک ندارند
- روی پروژه‌های فردی بدون تأثیر بر دیگران کار کنید - می‌توان روی پروژه‌های فردی بدون تأثیر بر دیگران کار کرد
- کلون کامل مخزن برای تجربه کامل دوره لازم است - کلون کل مخزن برای تجربه کامل برنامه درسی لازم است
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START --> <!-- CO-OP TRANSLATOR DISCLAIMER START -->
**سلب مسئولیت**: **سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است حاوی خطاها یا نادقتی‌هایی باشند. سند اصلی به زبان بومی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما مسئول هیچ گونه سو تفاهم یا برداشت نادرستی که ناشی از استفاده از این ترجمه باشد، نیستیم. این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما برای دقت تلاش می‌کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا عدم دقت‌هایی باشند. سند اصلی به زبان بومی خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما مسئول هیچ گونه سوءتفاهم یا تفسیر نادرست ناشی از استفاده از این ترجمه نیستیم.
<!-- CO-OP TRANSLATOR DISCLAIMER END --> <!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,7 +1,7 @@
{ {
"1-getting-started-lessons/1-intro-to-programming-languages/README.md": { "1-getting-started-lessons/1-intro-to-programming-languages/README.md": {
"original_hash": "bec5e35642176d9e483552bfc82996d8", "original_hash": "d5eeb6e975b5864d8da52d4a41941f8d",
"translation_date": "2026-03-06T16:21:37+00:00", "translation_date": "2026-03-27T22:09:45+00:00",
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md", "source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md",
"language_code": "ur" "language_code": "ur"
}, },
@ -493,7 +493,7 @@
}, },
"AGENTS.md": { "AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34", "original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-03-06T16:29:46+00:00", "translation_date": "2026-03-27T22:14:49+00:00",
"source_file": "AGENTS.md", "source_file": "AGENTS.md",
"language_code": "ur" "language_code": "ur"
}, },

@ -2,29 +2,29 @@
## پروجیکٹ کا جائزہ ## پروجیکٹ کا جائزہ
یہ ویب ڈویلپمنٹ کے بنیادی اصولوں کو ابتدائی افراد کو سکھانے کے لیے ایک تعلیمی نصاب کا ذخیرہ ہے۔ نصاب مائیکروسافٹ کلاؤڈ ایڈووکیٹس کی طرف سے تیار کردہ 12 ہفتوں پر محیط جامع کورس ہے، جس میں 24 عملی سبق شامل ہیں جو جاوا اسکرپٹ، CSS اور HTML کو کور کرتے ہیں۔ یہ ابتدائیوں کو ویب ڈویلپمنٹ کے بنیادی اصول سکھانے کے لیے ایک تعلیمی نصاب کا مخزن ہے۔ نصاب 12 ہفتوں پر محیط ایک جامع کورس ہے جو Microsoft Cloud Advocates نے تیار کیا ہے، جس میں جاوا اسکرپٹ، CSS، اور HTML پر مشتمل 24 عملی اسباق شامل ہیں۔
### اہم اجزاء ### کلیدی اجزاء
- **تعلیمی مواد**: 24 منظم سبق جو پروجیکٹ پر مبنی ماڈیولز میں ترتیب دیے گئے ہیں - **تعلیمی مواد**: 24 منظم اسباق جو پراجیکٹ پر مبنی ماڈیولز میں منظم ہیں
- **عملی پروجیکٹس**: ٹیریریم، ٹائپنگ گیم، براؤزر ایکسٹینشن، اسپیس گیم، بینکنگ ایپ، کوڈ ایڈیٹر، اور AI چیٹ اسسٹنٹ - **عملی پراجیکٹس**: ٹیریریم، ٹائپنگ گیم، براؤزر ایکسٹینشن، اسپیس گیم، بینکنگ ایپ، کوڈ ایڈیٹر، اور AI چیٹ اسسٹنٹ
- **انٹرایکٹو کوئزز**: 48 کوئزز، ہر ایک میں 3 سوالات (سبق سے پہلے/بعد کی جانچ) - **انٹرایکٹو کوئزز**: 48 کوئزز جن میں ہر ایک میں 3 سوالات ہوتے ہیں (سبق سے پہلے/بعد کی تشخیص)
- **کثیر اللسانی حمایت**: GitHub Actions کے ذریعے 50+ زبانوں میں خودکار تراجم - **کثیراللسانی معاونت**: GitHub Actions کے ذریعے 50+ زبانوں میں خودکار ترجمے
- **ٹیکنالوجیز**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (AI پروجیکٹس کے لیے) - **ٹیکنالوجیز**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (AI پراجیکٹس کے لیے)
### فن تعمیر ### فن تعمیر
- سبق پر مبنی تعلیمی ذخیرہ - سبق پر مبنی تعلیمی مخزن
- ہر سبق کے فولڈر میں README، کوڈ کے مثالیں، اور حل شامل ہیں - ہر سبق فولڈر میں README، کوڈ مثالیں، اور حل شامل ہوتے ہیں
- علیحدہ ڈائریکٹریز میں آزاد پروجیکٹس (quiz-app، مختلف سبق کے پروجیکٹس) - علیحدہ ڈائریکٹریز میں آزاد پراجیکٹس (quiz-app، مختلف سبق پراجیکٹس)
- GitHub Actions (co-op-translator) کے ذریعے ترجمہ نظام - GitHub Actions کا استعمال کرتے ہوئے ترجمہ نظام (co-op-translator)
- دستاویزات Docsify کے ذریعے فراہم اور پی ڈی ایف میں دستیاب - Docsify کے ذریعے دستاویزات فراہم کی جاتی ہیں اور PDF میں دستیاب ہیں
## سیٹ اپ کمانڈز ## سیٹ اپ کمانڈز
یہ ذخیرہ بنیادی طور پر تعلیمی مواد کے استعمال کے لیے ہے۔ مخصوص پروجیکٹس پر کام کرنے کے لیے: یہ مخزن بنیادی طور پر تعلیمی مواد کے استعمال کے لیے ہے۔ مخصوص پراجیکٹس کے ساتھ کام کرنے کے لیے:
### مرکزی ذخیرہ سیٹ اپ ### مرکزی مخزن سیٹ اپ
```bash ```bash
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
@ -37,246 +37,246 @@ cd Web-Dev-For-Beginners
cd quiz-app cd quiz-app
npm install npm install
npm run dev # سرور کی ترقی شروع کریں npm run dev # سرور کی ترقی شروع کریں
npm run build # پیداواری کے لیے تعمیر کریں npm run build # پیداوار کے لیے تیار کریں
npm run lint # ESLint چلائیں npm run lint # ESLint چلائیں
``` ```
### بینک پروجیکٹ API (Node.js + Express) ### بینک پراجیکٹ API (Node.js + Express)
```bash ```bash
cd 7-bank-project/api cd 7-bank-project/api
npm install npm install
npm start # اے پی آئی سرور شروع کریں npm start # API سرور شروع کریں
npm run lint # ESLint چلائیں npm run lint # ESLint چلائیں
npm run format # Prettier کے ساتھ فارمیٹ کریں npm run format # Prettier کے ساتھ شکل دیں
``` ```
### براؤزر ایکسٹینشن پروجیکٹس ### براؤزر ایکسٹینشن پراجیکٹس
```bash ```bash
cd 5-browser-extension/solution cd 5-browser-extension/solution
npm install npm install
# براوزر مخصوص ایکسٹینشن لوڈ کرنے کی ہدایات پر عمل کریں # مخصوص براؤزر کی توسیع لوڈ کرنے کی ہدایات پر عمل کریں
``` ```
### اسپیس گیم پروجیکٹس ### اسپیس گیم پراجیکٹس
```bash ```bash
cd 6-space-game/solution cd 6-space-game/solution
npm install npm install
# index.html کو براؤزر میں کھولیں یا Live Server استعمال کریں # براوزر میں index.html کھولیں یا Live Server استعمال کریں
``` ```
### چیٹ پروجیکٹ (Python Backend) ### چیٹ پراجیکٹ (Python بیک اینڈ)
```bash ```bash
cd 9-chat-project/solution/backend/python cd 9-chat-project/solution/backend/python
pip install openai pip install openai
# GITHUB_TOKEN ماحول کی متغیر سیٹ کریں # GITHUB_TOKEN ماحولیاتی متغیر مقرر کریں
python api.py python api.py
``` ```
## ترقیاتی ورک فلو ## ترقیاتی ورک فلو
### مواد کے تعاون کاروں کے لیے ### مواد کے شراکت داروں کے لیے
1. **ذخیرہ اپنے GitHub اکاؤنٹ پر فورک کریں** 1. اپنا GitHub اکاؤنٹ میں مخزن کو **فورک کریں**
2. **اپنے فورک کو مقامی کلون کریں** 2. اپنے فورک کو لوکل **کلون کریں**
3. **اپنے تبدیلیوں کے لیے نیا برانچ بنائیں** 3. اپنی تبدیلیوں کے لیے **نئی برانچ بنائیں**
4. سبق کے مواد یا کوڈ مثالوں میں تبدیلی کریں 4. سبق کے مواد یا کوڈ مثالوں میں تبدیلی کریں
5. متعلقہ پروجیکٹ ڈائریکٹریز میں کوڈ میں تبدیلیوں کو ٹیسٹ کریں 5. متعلقہ پراجیکٹ ڈائریکٹریز میں کوڈ کی تبدیلیاں ٹیسٹ کریں
6. تعاون کی ہدایات کے مطابق پل ریکوئسٹس بھیجیں 6. شراکت کے رہنما خطوط کے مطابق پل ریکویسٹ جمع کروائیں
### طلباء کے لیے ### سیکھنے والوں کے لیے
1. ذخیرہ فورک یا کلون کریں 1. مخزن کو فورک یا کلون کریں
2. سبق کی ڈائریکٹریز کو ترتیب سے دیکھیں 2. مرحلہ وار سبق کی ڈائریکٹریز پر جائیں
3. ہر سبق کے README فائلز پڑھیں 3. ہر سبق کے README فائلز پڑھیں
4. سبق سے پہلے کوئزز مکمل کریں https://ff-quizzes.netlify.app/web/ 4. سبق سے پہلے کی کوئزز مکمل کریں https://ff-quizzes.netlify.app/web/
5. سبق کے فولڈرز میں کوڈ مثالوں پر کام کریں 5. سبق کی فولڈرز میں کوڈ کی مثالوں پر کام کریں
6. اسائنمنٹس اور چیلنجز مکمل کریں 6. اسائنمنٹس اور چیلنجز مکمل کریں
7. سبق کے بعد کوئزز لیں 7. سبق کے بعد کی کوئزز دیں
### لائیو ترقی ### لائیو ڈیولپمنٹ
- **دستاویزات**: روٹ میں `docsify serve` چلائیں (پورٹ 3000) - **دستاویزات**: روٹ میں `docsify serve` چلائیں (پورٹ 3000)
- **کوئز ایپ**: `quiz-app` ڈائریکٹری میں `npm run dev` چلائیں - **کوئز ایپ**: quiz-app ڈائریکٹری میں `npm run dev` چلائیں
- **پروجیکٹس**: HTML پروجیکٹس کے لیے VS Code Live Server ایکسٹینشن استعمال کریں - **پراجیکٹس**: HTML پراجیکٹس کے لیے VS Code Live Server ایکسٹینشن استعمال کریں
- **API پروجیکٹس**: متعلقہ API ڈائریکٹریز میں `npm start` چلائیں - **API پراجیکٹس**: متعلقہ API ڈائریکٹریز میں `npm start` چلائیں
## جانچ کے ہدایات ## ٹیسٹنگ کی ہدایات
### کوئز ایپ جانچ ### کوئز ایپ ٹیسٹنگ
```bash ```bash
cd quiz-app cd quiz-app
npm run lint # کوڈ اسٹائل کے مسائل کی جانچ کریں npm run lint # کوڈ اسٹائل کے مسائل کی جانچ کریں
npm run build # یقین دہانی کریں کہ تعمیری عمل کامیاب ہو گیا ہے npm run build # تصدیق کریں کہ بلڈ کامیاب ہو گیا ہے
``` ```
### بینک API جانچ ### بینک API ٹیسٹنگ
```bash ```bash
cd 7-bank-project/api cd 7-bank-project/api
npm run lint # کوڈ کے طرز کے مسائل کی جانچ کریں npm run lint # کوڈ کے انداز کے مسائل چیک کریں
node server.js # تصدیق کریں کہ سرور بغیر کسی خرابی کے شروع ہوتا ہے node server.js # تصدیق کریں کہ سرور بغیر کسی خرابی کے شروع ہوتا ہے
``` ```
### عمومی جانچ کا طریقہ کار ### عمومی ٹیسٹنگ طریقہ کار
- یہ تعلیمی ذخیرہ جامع خودکار ٹیسٹوں کے بغیر ہے - یہ ایک تعلیمی مخزن ہے جس میں جامع خودکار ٹیسٹ شامل نہیں
- دستی جانچ پر توجہ مرکوز ہے: - دستی ٹیسٹنگ پر توجہ مرکوز ہے:
- کوڈ مثالیں بغیر غلطی کے چلیں - کوڈ مثالیں بغیر غلطی کے چلتی ہیں
- دستاویزات میں لنکس درست کام کریں - دستاویزات میں لنکس درست کام کرتے ہیں
- پروجیکٹ بنڈلز کامیابی سے مکمل ہوں - پراجیکٹ بلڈ کامیابی سے مکمل ہوتے ہیں
- مثالیں بہترین عملی طریقے اپنائیں - مثالیں بہترین طریقے کار کی پیروی کرتی ہیں
### جمع کروانے سے پہلے چیک ### پیشگی چیک
- package.json والی ڈائریکٹریز میں `npm run lint` چلائیں - package.json والے فولڈرز میں `npm run lint` چلائیں
- مارک ڈاؤن لنکس کی درستگی یقینی بنائیں - مارک ڈاؤن لنکس کی درستگی کی تصدیق کریں
- کوڈ مثالوں کو براؤزر یا Node.js میں ٹیسٹ کریں - کوڈ مثالوں کو براؤزر یا Node.js میں ٹیسٹ کریں
- تصدیق کریں کہ تراجم صحیح ساخت برقرار رکھیں - یقینی بنائیں کہ تراجم ڈھانچے کو صحیح طریقے سے برقرار رکھتے ہیں
## کوڈ اسٹائل گائیڈ لائنز ## کوڈ اسٹائل کے رہنما اصول
### جاوا اسکرپٹ ### جاوا اسکرپٹ
- جدید ES6+ نحو استعمال کریں - جدید ES6+ نحو استعمال کریں
- پروجیکٹس میں فراہم کردہ معیاری ESLint کنفیگریشن پر عمل کریں - پراجیکٹس میں مہیا کردہ معیاری ESLint کنفیگریشن پر عمل کریں
- تعلیمی وضاحت کے لیے بامعنی متغیر اور فنکشن کے نام استعمال کریں - تعلیمی وضاحت کے لیے معنی خیز متغیر اور فنکشن نام استعمال کریں
- سیکھنے والوں کے لیے تصورات کی وضاحت کے لیے تبصرے شامل کریں - سیکھنے والوں کے لیے تصورات کی وضاحت کے لیے تبصرے شامل کریں
- جہاں کنفیگر ہو وہاں Prettier سے فارمیٹ کریں - جہاں کنفیگر کیا گیا ہو Prettier سے فارمیٹ کریں
### HTML/CSS ### HTML/CSS
- معنوی HTML5 عناصر استعمال کریں - معنوی HTML5 اجزاء
- ریسپانسیو ڈیزائن کے اصول - ریسپانسیو ڈیزائن کے اصول
- واضح کلاس ناموں کے قواعد - واضح کلاس نامی کنونشنز
- CSS تکنیک کی وضاحت کے لیے تبصرے - سیکھنے والوں کے لیے CSS تکنیک کی وضاحت کے تبصرے
### پائتھان ### پائتھون
- PEP 8 اسٹائل گائیڈ لائنز - PEP 8 اسٹائل گائیڈ لائنز
- واضح، تعلیمی کوڈ مثالیں - واضح، تعلیمی کوڈ مثالیں
- جہاں مفید ہو، ٹائپ ہنٹس - سیکھنے کے لیے جہاں مفید ہو ٹائپ ہنٹس
### مارک ڈاؤن دستاویزات ### مارک ڈاؤن دستاویزات
- واضح ہیڈنگ ہائیرارکی - واضح ہیڈنگ ہائیرارکی
- زبان کی وضاحت کے ساتھ کوڈ بلاکس - زبان کی وضاحت کے ساتھ کوڈ بلاکس
- اضافی وسائط کے لنکس - اضافی وسائل کے لنکس
- `images/` فولڈرز میں اسکرین شاٹس اور تصاویر - `images/` ڈائریکٹریز میں اسکرین شاٹس اور تصاویر
- رسائی کے لیے تصاویر کا alt متن - معذوری کے لیے تصاویر کے لیے Alt متن
### فائل تنظیم ### فائل تنظیم
- سبق نمبر وار ترتیب دیے گئے (1-getting-started-lessons, 2-js-basics, وغیرہ) - اسباق متسلسل نمبرات کے ساتھ (1-getting-started-lessons, 2-js-basics, وغیرہ)
- ہر پروجیکٹ میں `solution/` اور اکثر `start/` یا `your-work/` ڈائریکٹریز - ہر پراجیکٹ کے پاس `solution/` اور اکثر `start/` یا `your-work/` ڈائریکٹریز
- تصاویر سبق مخصوص `images/` فولڈرز میں محفوظ - اسباق کے مخصوص `images/` فولڈرز میں تصویریں محفوظ
- تراجم `translations/{language-code}/` ساخت میں - تراجم `translations/{language-code}/` ساخت میں
## بلڈ اور تعیناتی ## بلڈ اور ڈیپلائمنٹ
### کوئز ایپ تعیناتی (Azure Static Web Apps) ### کوئز ایپ ڈیپلائمنٹ (Azure Static Web Apps)
کوئز ایپ کو Azure Static Web Apps تعیناتی کے لیے ترتیب دیا گیا ہے: کوئز ایپ Azure Static Web Apps پر ڈیپلائمنٹ کے لیے ترتیب دی گئی ہے:
```bash ```bash
cd quiz-app cd quiz-app
npm run build # فولڈر dist/ بناتا ہے npm run build # فولڈر dist/ بناتا ہے
# مرکزی شاخ پر push کرنے پر GitHub Actions ورک فلو کے ذریعے تعینات کرتا ہے # مین پر پش کرنے پر GitHub Actions ورک فلو کے ذریعے تعینات کرتا ہے
``` ```
Azure Static Web Apps کنفیگریشن: Azure Static Web Apps کنفیگریشن:
- **ایپ کا مقام**: `/quiz-app` - **اپلیکیشن مقام**: `/quiz-app`
- **آؤٹ پٹ لوکیشن**: `dist` - **آؤٹ پٹ مقام**: `dist`
- **ورک فلو**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` - **ورک فلو**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### دستاویزات PDF جنریشن ### دستاویزات PDF جنریشن
```bash ```bash
npm install # docsify-to-pdf انسٹال کریں npm install # docsify-to-pdf انسٹال کریں
npm run convert # دستاویزات سے PDF بنائیں npm run convert # docs سے PDF بنائیں
``` ```
### Docsify دستاویزات ### Docsify دستاویزات
```bash ```bash
npm install -g docsify-cli # ڈاکسفائی کو عالمی سطح پر انسٹال کریں npm install -g docsify-cli # ڈاکسفائی کو عالمی طور پر انسٹال کریں
docsify serve # لوکل ہوسٹ پر 3000 پورٹ پر سروس فراہم کریں docsify serve # لوکل ہوسٹ:3000 پر سروس دیں
``` ```
### پروجیکٹ مخصوص بلڈز ### پراجیکٹ مخصوص بلڈز
ہر پروجیکٹ ڈائریکٹری کا اپنا بلڈ عمل ہو سکتا ہے: ہر پراجیکٹ ڈائریکٹری کا اپنا بلڈ عمل ہو سکتا ہے:
- Vue پروجیکٹس: `npm run build` پروڈکشن بنڈل بناتا ہے - Vue پراجیکٹس: `npm run build` سے پروڈکشن بنڈلز بنتے ہیں
- سٹیٹک پروجیکٹس: کوئی بلڈ مرحلہ نہیں، فائلز براہ راست سرونگ - Static پراجیکٹس: کوئی بلڈ مرحلہ نہیں، فائلیں براہ راست سرف کی جاتی ہیں
## پل ریکوئسٹ گائیڈ لائنز ## پل ریکویسٹ رہنما خطوط
### عنوان کی شکل ### عنوان کی شکل
واضح، وضاحتی عنوان استعمال کریں جو تبدیلی کے شعبے کو ظاہر کریں: صاف، وضاحتی عنوانات استعمال کریں جو تبدیلی کے علاقے کی نشاندہی کرتے ہوں:
- `[Quiz-app] سبق X کے لیے نیا کوئز شامل کریں` - `[Quiz-app] سبق X کے لیے نیا کوئز شامل کریں`
- `[Lesson-3] ٹیریریم پروجیکٹ میں ٹائپو درست کریں` - `[Lesson-3] ٹیریریم پراجیکٹ میں ٹائپو کی اصلاح کریں`
- `[Translation] سبق 5 کے لیے ہسپانوی ترجمہ شامل کریں` - `[Translation] سبق 5 کے لیے ہسپانوی ترجمہ شامل کریں`
- `[Docs] سیٹ اپ ہدایات اپ ڈیٹ کریں` - `[Docs] سیٹ اپ ہدایات اپ ڈیٹ کریں`
### ضروری چیکس ### درکار چیک
PR جمع کروانے سے پہلے: PR جمع کروانے سے پہلے:
1. **کوڈ کوالٹی**: 1. **کوڈ معیار**:
- متعلقہ پروجیکٹ ڈائریکٹریز میں `npm run lint` چلائیں - متاثرہ پراجیکٹ ڈائریکٹریز میں `npm run lint` چلائیں
- تمام لِنٹنگ غلطیاں اور وارننگز حل کریں - تمام lint غلطیاں اور وارننگز درست کریں
2. **بلڈ تصدیق**: 2. **بلڈ توثیق**:
- جہاں قابل اطلاق ہو `npm run build` چلائیں - اگر قابل اطلاق ہو تو `npm run build` چلائیں
- یقینی بنائیں کہ کوئی بلڈ غلطی نہ ہو - یقینی بنائیں کہ کوئی بلڈ غلطی نہ ہو
3. **لنک ویلیڈیشن**: 3. **لنک ویریفیکیشن**:
- تمام مارک ڈاؤن لنکس ٹیسٹ کریں - تمام مارک ڈاؤن لنکس کی جانچ کریں
- تصویر کے ریفرنس کام کریں - امیج حوالہ جات کی تصدیق کریں
4. **مواد کا جائزہ**: 4. **مواد کا جائزہ**:
- املا اور گرامر کی پروف ریڈنگ کریں - املا اور گرامر کی جانچ کریں
- کوڈ مثالیں درست اور تعلیمی ہوں - کوڈ مثالیں درست اور تعلیمی ہوں
- تراجم اصل معنی برقرار رکھیں - ترجمے اصل معنی برقرار رکھیں
### تعاون کی ضروریات ### تعاون کی ضروریات
- Microsoft CLA سے اتفاق کریں (پہلے PR پر خودکار چیک) - Microsoft CLA سے اتفاق کریں (پہلے PR پر خودکار چیک)
- [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) پر عمل کریں - [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) کی پیروی کریں
- تفصیلی ہدایات کے لیے [CONTRIBUTING.md](./CONTRIBUTING.md) دیکھیں - تفصیلی رہنما خطوط کے لیے [CONTRIBUTING.md](./CONTRIBUTING.md) دیکھیں
- PR تفصیل میں اگر قابل اطلاق ہو تو مسئلہ نمبر شامل کریں - اگر قابل اطلاق ہو تو PR کی وضاحت میں مسئلے کے نمبر حوالہ کریں
### جائزہ کا عمل ### جائزہ لینے کا عمل
- PRs کی ملاحظہ کاری مینٹینرز اور کمیونٹی کرتے ہیں - PRs کا جائزہ مینٹیینرز اور کمیونٹی کرتے ہیں
- تعلیمی وضاحت کو ترجیح دی جاتی ہے - تعلیمی وضاحت کو ترجیح دی جاتی ہے
- کوڈ مثالیں موجودہ بہترین طریقوں کی پیروی کریں - کوڈ مثالیں موجودہ بہترین طریقوں کی پیروی کریں
- تراجم درستگی اور ثقافتی مناسبت کے لیے جائزہ لیے جاتے ہیں - تراجم کی درستگی اور ثقافتی مطابقت کی جانچ کی جاتی ہے
## ترجمہ نظام ## ترجمہ کا نظام
### خودکار ترجمہ ### خودکار ترجمہ
- GitHub Actions کے ساتھ co-op-translator ورک فلو استعمال کرتا ہے - GitHub Actions کے ساتھ co-op-translator ورک فلو استعمال کرتا ہے
- 50+ زبانوں میں خودکار ترجمہ کرتا ہے - 50+ زبانوں میں خودکار ترجمہ کرتا ہے
- بنیادی ڈائریکٹریز میں ماخذ فائلیں - ماخذ فائلیں مرکزی ڈائریکٹریز میں
- ترجمہ شدہ فائلیں `translations/{language-code}/` ڈائریکٹریز میں - ترجمہ شدہ فائلیں `translations/{language-code}/` ڈائریکٹریز میں
### دستی ترجمے کی بہتری شامل کرنا ### دستی ترجمہ کی بہتری شامل کرنا
1. `translations/{language-code}/` میں فائل تلاش کریں 1. `translations/{language-code}/` میں فائل تلاش کریں
2. ساخت کو برقرار رکھتے ہوئے بہتریاں کریں 2. ڈھانچہ برقرار رکھتے ہوئے بہتری کریں
3. کوڈ مثالیں کام کرتی رہیں 3. یقینی بنائیں کہ کوڈ مثالیں کام کر رہی ہوں
4. کسی بھی مقامی کوئز مواد کو ٹیسٹ کریں 4. کسی مقامی کوئز مواد کی جانچ کریں
### ترجمہ میٹا ڈیٹا ### ترجمہ میٹا ڈیٹا
ترجمہ شدہ فائلیں میٹا ڈیٹا ہیڈر شامل کرتی ہیں: ترجمہ شدہ فائلوں میں میٹا ڈیٹا ہیڈر شامل ہوتا ہے:
```markdown ```markdown
<!-- <!--
CO_OP_TRANSLATOR_METADATA: CO_OP_TRANSLATOR_METADATA:
@ -289,120 +289,120 @@ CO_OP_TRANSLATOR_METADATA:
--> -->
``` ```
## ڈیبگنگ اور مسئلے حل کرنا ## خرابیوں کا سراغ لگانا اور مسائل حل کرنا
### عام مسائل ### عام مسائل
**کوئز ایپ شروع نہیں ہوتی**: **کوئز ایپ شروع نہیں ہوتی**:
- Node.js ورژن چیک کریں (v14+ کی سفارش) - Node.js کا ورژن چیک کریں (v14+ تجویز کردہ)
- `node_modules` اور `package-lock.json` حذف کریں، پھر `npm install` چلائیں - `node_modules` اور `package-lock.json` کو حذف کریں، دوبارہ `npm install` چلائیں
- پورٹ تنازعہ چیک کریں (ڈیفالٹ: Vite پورٹ 5173 استعمال کرتا ہے) - پورٹ تنازعات کی جانچ کریں (ڈیفالٹ: Vite پورٹ 5173 استعمال کرتا ہے)
**API سرور شروع نہیں ہوتا**: **API سرور شروع نہیں ہوتا**:
- Node.js ورژن کم از کم (node >=10) یقینی بنائیں - Node.js ورژن کم از کم node >=10 ہونا چاہیے
- دیکھیں کہ پورٹ استعمال میں تو نہیں - چیک کریں کہ پورٹ استعمال میں نہ ہو
- تمام dependencies `npm install` سے انسٹال ہوں - تمام انحصارات `npm install` سے انسٹال ہوں
**براؤزر ایکسٹینشن لوڈ نہیں ہوتی**: **براؤزر ایکسٹینشن نہیں چلتی**:
- manifest.json کی درست فارمیٹنگ چیک کریں - manifest.json کی درست فارمیٹنگ چیک کریں
- براؤزر کنسول میں غلطیاں دیکھیں - براؤزر کنسول میں غلطیاں دیکھیں
- براؤزر مخصوص ایکسٹینشن انسٹالیشن ہدایات پر عمل کریں - براؤزر مخصوص ایکسٹینشن انسٹالیشن ہدایات پر عمل کریں
**Python چیٹ پروجیکٹ مسائل**: **Python چیٹ پراجیکٹ کے مسائل**:
- OpenAI پیکج انسٹال کریں: `pip install openai` - OpenAI پیکج انسٹال کریں: `pip install openai`
- GITHUB_TOKEN ماحول متغیر سیٹ ہے - GITHUB_TOKEN ماحول کی ویریبل سیٹ ہے
- GitHub Models رسائی کی اجازتیں چیک کریں - GitHub Models تک رسائی کے اجازت نامے چیک کریں
**Docsify دستاویزات سرونگ نہیں کرتا**: **Docsify دستاویزات سرور نہیں کر رہا**:
- docsify-cli عالمی انسٹال کریں: `npm install -g docsify-cli` - docsify-cli گلوبلی انسٹال کریں: `npm install -g docsify-cli`
- ذخیرہ کی روٹ ڈائریکٹری سے چلائیں - مخزن کی روٹ ڈائریکٹری سے چلائیں
- چیک کریں کہ `docs/_sidebar.md` موجود ہے - چیک کریں کہ `docs/_sidebar.md` موجود ہو
### ترقیاتی ماحول کے مشورے ### ترقیاتی ماحول کے ٹپس
- HTML پروجیکٹس کے لیے VS Code لائیو سرور ایکسٹینشن استعمال کریں - HTML پراجیکٹس کے لیے VS Code میں Live Server ایکسٹینشن استعمال کریں
- مستقل فارمیٹنگ کے لیے ESLint اور Prettier ایکسٹینشن انسٹال کریں - ESLint اور Prettier ایکسٹینشن انسٹال کریں تاکہ فارمیٹنگ یکساں رہے
- JavaScript ڈیبگنگ کے لیے براؤزر ڈویلپر ٹولز استعمال کریں - جاوا اسکرپٹ کی خرابیوں کے لیے براؤزر DevTools استعمال کریں
- Vue پروجیکٹس کے لیے Vue DevTools براؤزر ایکسٹینشن انسٹال کریں - Vue پراجیکٹس کے لیے Vue DevTools براؤزر ایکسٹینشن انسٹال کریں
### کارکردگی کے پہلو ### کارکردگی کے امور
- بڑی تعداد میں ترجمہ شدہ فائلیں (50+ زبانیں) مکمل کلونز کو بڑا بناتی ہیں - ترجمہ شدہ فائلوں کی بڑی تعداد (50+ زبانیں) کلوننگ کو بڑا بناتی ہے
- صرف مواد پر کام کرتے وقت shallow clone استعمال کریں: `git clone --depth 1` - صرف مواد پر کام کے لیے shallow clone استعمال کریں: `git clone --depth 1`
- انگریزی مواد پر کام کرتے ہوئے تراجم کو تلاش سے خارج کریں - انگریزی مواد پر کام کے دوران ترجمہ شدہ فائلوں کو تلاش سے خارج کریں
- بلڈ عمل پہلے رن پر سست ہو سکتا ہے (npm install, Vite build) - بلڈ عمل پہلے چلاوے پر سست ہو سکتا ہے (npm install، Vite build)
## سیکیورٹی کے پہلو ## سیکیورٹی کے امور
### ماحول متغیرات ### ماحول کی ویریبلز
- API کیز کبھی بھی ریپوزٹری میں کمیٹ نہ کریں - API کیز کبھی بھی مخزن میں جمع نہ کریں
- `.env` فائلز استعمال کریں (جو پہلے سے `.gitignore` میں ہیں) - `.env` فائلز کا استعمال کریں (جو پہلے ہی `.gitignore` میں ہیں)
- پروجیکٹ کے READMEs میں ضروری ماحول متغیرات دستاویز کریں - درکار ماحول کی ویریبلز پراجیکٹ READMEs میں دستاویزی کریں
### پائتھان پروجیکٹس ### پائتھون پراجیکٹس
- ورچوئل ماحول استعمال کریں: `python -m venv venv` - ورچوئل ماحول استعمال کریں: `python -m venv venv`
- dependencies کو اپ ڈیٹ رکھیں - انحصارات کو بروقت اپڈیٹ رکھیں
- GitHub ٹوکنز میں کم از کم ضروری اجازتیں ہوں - GitHub ٹوکنز کو کم از کم ضروری اجازتیں دینی چاہئیں
### GitHub Models تک رسائی ### GitHub Models تک رسائی
- GitHub Models کے لیے پرسنل ایکسس ٹوکنز (PAT) ضروری - GitHub Models کے لیے Personal Access Tokens (PAT) ضروری ہیں
- ٹوکنز ماحول متغیرات کے طور پر محفوظ - ٹوکنز کو ماحول کی ویریبلز کے طور پر محفوظ کریں
- ٹوکنز یا کریڈینشلز کبھی بھی کمیٹ نہ کریں - ٹوکنز یا اسناد کو کبھی بھی کمیٹ نہ کریں
## اضافی نوٹس ## اضافی نوٹس
### ہدف سامعین ### ہدف سامعین
- ویب ڈویلپمنٹ کے کل جب beginner - ویب ڈویلپمنٹ کے مکمل نو آموز
- طلباء اور خود سیکھنے والے - طلباء اور خود سیکھنے والے
- اساتذہ جو نصاب کلاس روم میں استعمال کرتے ہیں - اساتذہ جو نصاب کو کلاس رومز میں استعمال کرتے ہیں
- مواد رسائی کے لیے ڈیزائن کیا گیا ہے اور ہنر کی تدریجی ترقی - مواد قابل رسائی اور بتدریج مہارت سازی کے لیے ڈیزائن کیا گیا ہے
### تعلیمی فلسفہ ### تعلیمی فلسفہ
- پروجیکٹ پر مبنی سیکھنے کا طریقہ - پراجیکٹ پر مبنی سیکھنے کا طریقہ
- کثرت سے علم کی جانچ (کوئزز) - بار بار علم کی جانچ (کوئزز)
- عملی کوڈنگ مشقیں - عملی کوڈنگ مشقیں
- حقیقی دنیا کی تطبیقی مثالیں - حقیقی دنیا کی ایپلیکیشن کی مثالیں
- فریم ورکس سے پہلے بنیادی اصولوں پر توجہ - فریم ورکس سے پہلے بنیادی اصولوں پر توجہ
### ذخیرہ کی دیکھ بھال ### مخزن کی دیکھ بھال
- سرگرم سیکھنے والوں اور تعاون کاروں کی کمیونٹی - سیکھنے والوں اور تعاون کنندگان کی فعال کمیونٹی
- dependencies اور مواد کی باقاعدہ اپ ڈیٹ - انحصارات اور مواد کی باقاعدہ اپ ڈیٹس
- مینٹینرز کی طرف سے اشوز اور مباحثے کی نگرانی - مسائل اور مباحثے مینٹیینرز کی نگرانی میں
- GitHub Actions کے ذریعے ترجمہ اپ ڈیٹس خودکار - ترجمہ کی اپ ڈیٹس GitHub Actions کے ذریعے خودکار
### متعلقہ وسائل ### متعلقہ وسائل
- [Microsoft Learn modules](https://docs.microsoft.com/learn/) - [Microsoft Learn modules](https://docs.microsoft.com/learn/)
- [Student Hub resources](https://docs.microsoft.com/learn/student-hub/) - [Student Hub resources](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) سیکھنے والوں کے لیے تجویز کردہ - [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) سیکھنے والوں کے لیے تجویز کردہ
- اضافی کورسز: جنریٹیو AI، ڈیٹا سائنس، ML، IoT نصاب دستیاب - اضافی کورسز: جنریٹو AI، ڈیٹا سائنس، ML، IoT نصاب دستیاب ہیں
### مخصوص پروجیکٹس کے ساتھ کام کرنا ### مخصوص پراجیکٹس کے ساتھ کام
انفرادی پروجیکٹس کے لیے تفصیلی ہدایات کے لیے README فائلز دیکھیں: انفرادی پراجیکٹس کی تفصیلی ہدایات کے لیے، درج ذیل README فائلوں کا حوالہ دیں:
- `quiz-app/README.md` - Vue 3 کوئز ایپلیکیشن - `quiz-app/README.md` - Vue 3 کوئز ایپلیکیشن
- `7-bank-project/README.md` - بینکنگ ایپلیکیشن مع تصدیق - `7-bank-project/README.md` - تصدیق کے ساتھ بینکنگ ایپلیکیشن
- `5-browser-extension/README.md` - براؤزر ایکسٹینشن کی ترقی - `5-browser-extension/README.md` - براؤزر ایکسٹینشن ڈیولپمنٹ
- `6-space-game/README.md` - کینوس پر مبنی گیم ڈویلپمنٹ - `6-space-game/README.md` - کینوس پر مبنی گیم ڈیولپمنٹ
- `9-chat-project/README.md` - AI چیٹ اسسٹنٹ پروجیکٹ - `9-chat-project/README.md` - AI چیٹ اسسٹنٹ پراجیکٹ
### مونو ریپو کا ڈھانچہ ### مونو رپو ساخت
اگرچہ روایتی مونو ریپو نہیں ہے، یہ ذخیرہ کئی آزاد پروجیکٹس پر مشتمل ہے: اگرچہ یہ روایتی مونو رپو نہیں ہے، یہ مخزن متعدد آزاد پراجیکٹس پر مشتمل ہے:
- ہر سبق خود مختار ہے - ہر سبق خود مختار ہے
- پروجیکٹس مشترکہ dependencies نہیں رکھتے - پراجیکٹس انحصارات شیئر نہیں کرتے
- انفرادی پروجیکٹس پر بغیر دوسرے متاثر کیے کام کریں - بغیر دوسرے پراجیکٹس کو متاثر کیے انفرادی پراجیکٹس پر کام کریں
- مکمل نصاب کے تجربے کے لیے پورا ریپو کلون کریں - پورے نصاب کے تجربے کے لیے پورا مخزن کلون کریں
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START --> <!-- CO-OP TRANSLATOR DISCLAIMER START -->
**دفعۂ اخطار**: **خبردار**:
اس دستاویز کا ترجمہ AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) استعمال کرتے ہوئے کیا گیا ہے۔ ہم درستگی کے لیے کوشاں ہیں، لیکن براہِ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم صحت ہوسکتی ہیں۔ اصل دستاویز کو اس کی مادری زبان میں مستند ماخذ سمجھا جانا چاہیے۔ اہم معلومات کے لیے پیشہ ورانہ انسانی ترجمہ تجویز کیا جاتا ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم پر نہیں ہوگی۔ اس دستاویز کا ترجمہ AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے کیا گیا ہے۔ اگرچہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم آگاہ رہیں کہ خودکار تراجم میں غلطیاں یا عدم صحیحیت ہو سکتی ہے۔ اصل دستاویز اپنی اصلی زبان میں معتبر ماخذ سمجھی جائے گی۔ اہم معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم پر عائد نہیں ہوتی۔
<!-- CO-OP TRANSLATOR DISCLAIMER END --> <!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,7 +1,7 @@
{ {
"1-getting-started-lessons/1-intro-to-programming-languages/README.md": { "1-getting-started-lessons/1-intro-to-programming-languages/README.md": {
"original_hash": "bec5e35642176d9e483552bfc82996d8", "original_hash": "d5eeb6e975b5864d8da52d4a41941f8d",
"translation_date": "2026-03-06T16:27:11+00:00", "translation_date": "2026-03-27T22:12:34+00:00",
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md", "source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md",
"language_code": "zh-CN" "language_code": "zh-CN"
}, },
@ -493,7 +493,7 @@
}, },
"AGENTS.md": { "AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34", "original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-03-06T16:30:45+00:00", "translation_date": "2026-03-27T22:15:37+00:00",
"source_file": "AGENTS.md", "source_file": "AGENTS.md",
"language_code": "zh-CN" "language_code": "zh-CN"
}, },

@ -2,27 +2,27 @@
## 项目概述 ## 项目概述
这是一个面向初学者教授网页开发基础知识的教育课程仓库。该课程是由微软云推广开发的为期12周的综合课程包含24个涵盖JavaScript、CSS和HTML的实践课程。 这是一个面向初学者教授网页开发基础知识的教育课程仓库。该课程是由微软云推广人员开发的为期12周的综合课程包含24个涵盖JavaScript、CSS和HTML的实践课程。
### 关键组成部分 ### 关键组成部分
- **教育内容**24节结构化课程,按项目模块组织 - <strong>教育内容</strong>24个结构化课程,按项目模块组织
- **实践项目**:生态瓶项目、打字游戏、浏览器扩展、太空游戏、银行应用、代码编辑器及 AI 聊天助手 - <strong>实用项目</strong>生态瓶、打字游戏、浏览器扩展、太空游戏、银行应用、代码编辑器和AI聊天助手
- **互动测验**48个测验每个3个问题课前/课后评估) - <strong>互动测验</strong>48个测验每个含3个问题课前/课后评估)
- **多语言支持**:通过 GitHub Actions 自动翻译为50多种语言 - <strong>多语言支持</strong>通过GitHub Actions实现50多种语言的自动翻译
- **技术栈**HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python用于 AI 项目) - <strong>技术栈</strong>HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python用于AI项目
### 架构 ### 架构
- 以课程为基础结构的教育仓库 - 以课程为基础结构的教育仓库
- 每节课程文件夹包含 README、代码示例和解决方案 - 每个课程文件夹包含README、代码示例和解决方案
- 独立项目存放在单独目录中quiz-app、各种课程项目) - 独立项目位于单独目录quiz-app各种课程项目)
- 使用 GitHub Actionsco-op-translator实现翻译系统 - 使用GitHub Actions的翻译系统co-op-translator
- 文档通过 Docsify 提供,并可导出为 PDF - 通过Docsify提供文档并支持PDF格式
## 设置命令 ## 安装命令
此仓库主要用于教育内容的学习。针对特定项目的操作 该仓库主要用于学习内容使用。对于特定项目的使用
### 主仓库设置 ### 主仓库设置
@ -37,11 +37,11 @@ cd Web-Dev-For-Beginners
cd quiz-app cd quiz-app
npm install npm install
npm run dev # 启动开发服务器 npm run dev # 启动开发服务器
npm run build # 生产环境构建 npm run build # 构建生产环境
npm run lint # 运行 ESLint npm run lint # 运行 ESLint
``` ```
### 银行项目 APINode.js + Express ### 银行项目APINode.js + Express
```bash ```bash
cd 7-bank-project/api cd 7-bank-project/api
@ -64,10 +64,10 @@ npm install
```bash ```bash
cd 6-space-game/solution cd 6-space-game/solution
npm install npm install
# 在浏览器中打开 index.html 或使用实时服务器 # 在浏览器中打开 index.html 或使用 Live Server
``` ```
### 聊天项目Python 后端) ### 聊天项目Python后端
```bash ```bash
cd 9-chat-project/solution/backend/python cd 9-chat-project/solution/backend/python
@ -76,33 +76,33 @@ pip install openai
python api.py python api.py
``` ```
## 开发工作流程 ## 开发流程
### 内容贡献者 ### 内容贡献者
1. **Fork 仓库**到你的 GitHub 账户 1. <strong>Fork该仓库</strong>到你的GitHub账户
2. **克隆你的 Fork**到本地 2. <strong>克隆你的Fork</strong>到本地
3. **创建新的分支**进行更改 3. <strong>创建新分支</strong>进行更改
4. 修改课程内容或代码示例 4. 修改课程内容或代码示例
5. 在相关项目目录测试代码 5. 在相关项目目录测试代码
6. 提交符合贡献指南的拉取请求 6. 根据贡献指南提交Pull Request
### 学习者 ### 学习者
1. Fork 或克隆仓库 1. Fork或克隆仓库
2. 按顺序浏览课程目录 2. 按顺序进入课程目录
3. 阅读每节课程的 README 文件 3. 阅读各课程README文件
4. https://ff-quizzes.netlify.app/web/ 完成课前测验 4. 访问 https://ff-quizzes.netlify.app/web/ 完成课前测验
5. 完成课程文件夹中的代码示例 5. 完成课程文件夹中的代码示例
6. 完成作业和挑战 6. 完成作业和挑战
7. 参加课后测验 7. 参加课后测验
### 实时开发 ### 实时开发
- **文档**:在根目录运行 `docsify serve`端口3000 - <strong>文档</strong>:在根目录运行 `docsify serve`端口3000
- **测验应用**:在 quiz-app 目录运行 `npm run dev` - <strong>测验应用</strong>在quiz-app目录运行 `npm run dev`
- **项目**:使用 VS Code Live Server 扩展运行 HTML 项目 - <strong>项目</strong>HTML项目使用VS Code Live Server扩展
- **API 项目**:在对应 API 目录运行 `npm start` - **API项目**在相应API目录运行 `npm start`
## 测试说明 ## 测试说明
@ -114,93 +114,93 @@ npm run lint # 检查代码风格问题
npm run build # 验证构建是否成功 npm run build # 验证构建是否成功
``` ```
### 银行 API 测试 ### 银行API测试
```bash ```bash
cd 7-bank-project/api cd 7-bank-project/api
npm run lint # 检查代码风格问题 npm run lint # 检查代码风格问题
node server.js # 验证服务器启动无错误 node server.js # 验证服务器启动是否无错误
``` ```
### 一般测试方法 ### 常规测试方法
- 这是教育仓库,无全面自动测试 - 这是一个教育用仓库,没有全面的自动化测试
- 手动测试重点: - 手动测试重点:
- 代码示例无错误运行 - 代码示例无错误运行
- 文档链接正确 - 文档中的链接正常
- 项目构建成功 - 项目能成功构建
- 示例符合最佳实践 - 示例遵循最佳实践
### 提交前检查 ### 提交前检查
- 在 package.json 的目录运行 `npm run lint` - 在含package.json的目录运行 `npm run lint`
- 验证 markdown 链接有效 - 验证markdown链接有效
- 浏览器或 Node.js 中测试代码示例 - 浏览器或Node.js中测试代码示例
- 确认翻译结构无误 - 确保翻译保持正确结构
## 代码风格指南 ## 代码风格指南
### JavaScript ### JavaScript
- 使用现代 ES6+ 语法 - 使用现代ES6+语法
- 遵循项目提供的标准 ESLint 配置 - 遵守项目中标准的ESLint配置
- 使用有意义的变量和函数名,便于教学 - 变量和函数有意义,便于教学理解
- 添加注释解释概念,方便学习者 - 添加注释解释概念,帮助学习者
- 按配置使用 Prettier 格式化 - 在配置处使用Prettier格式化
### HTML/CSS ### HTML/CSS
- 使用语义化 HTML5 元素 - 使用语义化HTML5元素
- 响应式设计原则 - 响应式设计原则
- 清晰的类命名规范 - 清晰的类命名规范
- 使用注释解释 CSS 技巧,便于理解 - 注释说明CSS技术方便学习者理解
### Python ### Python
- 遵循 PEP 8 规范 - 遵循PEP 8风格指南
- 提供清晰易懂的代码示例 - 提供清晰易懂的示例代码
- 在有助学习的地方使用类型提示 - 需要时添加类型提示以辅助学习
### Markdown 文档 ### Markdown文档
- 清晰的标题层级 - 清晰的标题层级结构
- 代码块指定语言 - 带语言标注的代码块
- 链接附带额外资源 - 链接额外资源
- `images/` 目录中存放截图和图片 - `images/`目录下的截图和图片
- 图片附带 alt 文本便于无障碍访问 - 图片配备辅助访问的alt文字
### 文件组织 ### 文件组织
- 课程按照数字顺序编号1-getting-started-lessons2-js-basics 等) - 课程按顺序编号1-getting-started-lessons2-js-basics等
- 每个项目包含 `solution/` 及通常的 `start/``your-work/` 目录 - 每个项目`solution/`,通常还有 `start/``your-work/` 目录
- 图片存在对应课程`images/` 文件夹 - 图片存在各课程对应的 `images/` 文件夹
- 翻译文件存放结构为 `translations/{language-code}/` - 翻译文件存放`translations/{语言代码}/` 结构下
## 构建与部署 ## 构建与部署
### 测验应用部署Azure 静态网页应用) ### 测验应用部署Azure静态网页应用
quiz-app配置为 Azure 静态网页应用部署: quiz-app配置为Azure静态网页应用部署
```bash ```bash
cd quiz-app cd quiz-app
npm run build # 创建 dist/ 文件夹 npm run build # 创建 dist/ 文件夹
# 通过 GitHub Actions 工作流在推送到 main 时部署 # 在推送到 main 时通过 GitHub Actions 工作流部署
``` ```
Azure 静态网页应用配置: Azure静态网页应用配置
- **应用位置**`/quiz-app` - <strong>应用位置</strong>`/quiz-app`
- **输出位置**`dist` - <strong>输出位置</strong>`dist`
- **工作流**`.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` - <strong>工作流</strong>`.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### 文档 PDF 生成 ### 文档PDF生成
```bash ```bash
npm install # 安装 docsify-to-pdf npm install # 安装 docsify-to-pdf
npm run convert # 从 docs 生成 PDF npm run convert # 从文档生成 PDF
``` ```
### Docsify 文档 ### Docsify文档
```bash ```bash
npm install -g docsify-cli # 全局安装 Docsify npm install -g docsify-cli # 全局安装 Docsify
@ -210,74 +210,71 @@ docsify serve # 在 localhost:3000 上提供服务
### 项目特定构建 ### 项目特定构建
各项目目录可能有自己的构建流程: 各项目目录可能有自己的构建流程:
- Vue 项目:`npm run build` 生成生产包 - Vue项目`npm run build`生成生产包
- 静态项目:无构建步骤,直接提供文件 - 静态项目:无构建步骤,直接提供文件
## 拉取请求指南 ## Pull Request指引
### 标题格式 ### 标题格式
使用明确描述更改范围的标题 使用清晰且描述性标题表明变更范围
- `[Quiz-app] 为第 X 课添加新测验` - `[Quiz-app] 添加第X课新测验`
- `[Lesson-3] 修正生态瓶项目中的拼写错误` - `[Lesson-3] 修正生态瓶项目中的错别字`
- `[Translation] 添加第5课西班牙语翻译` - `[Translation] 添加第5课西班牙语翻译`
- `[Docs] 更新安装说明` - `[Docs] 更新设置说明`
### 必须检查项 ### 提交前必需检查
提交 PR 前: 1. <strong>代码质量</strong>
- 在涉及的项目目录执行 `npm run lint`
- 修复所有lint错误和警告
1. **代码质量** 2. <strong>构建验证</strong>
- 在受影响项目目录运行 `npm run lint`
- 修复所有 lint 错误和警告
2. **构建验证**
- 如适用,运行 `npm run build` - 如适用,运行 `npm run build`
- 确保无构建错误 - 确保无构建错误
3. **链接验证** 3. <strong>链接校验</strong>
- 测试所有 markdown 链接 - 测试所有markdown链接
- 确认图片引用有效 - 确认图片引用正常
4. **内容审核** 4. <strong>内容校对</strong>
- 校对拼写和语法 - 校查拼写及语法
- 确保代码示例正确且有教育意义 - 确认代码示例正确且具有教学意义
- 核实翻译保持原意 - 验证翻译保持原意
### 贡献要求 ### 贡献要求
- 同意微软 CLA首次 PR 自动检查) - 同意微软CLA首次PR时自动检查)
- 遵守 [微软开源行为准则](https://opensource.microsoft.com/codeofconduct/) - 遵守[微软开源行为准则](https://opensource.microsoft.com/codeofconduct/)
- 详见 [CONTRIBUTING.md](./CONTRIBUTING.md) 指南 - 详见[CONTRIBUTING.md](./CONTRIBUTING.md)获取细节指南
- PR 描述中引用相关 issue如有 - PR描述中引用相关issue编号(如有)
### 审流程 ### 审流程
- PR 由维护者和社区审核 - PR由维护者和社区审核
- 优先保证教育清晰度 - 重点确保教育内容清晰
- 代码示例遵循当前最佳实践 - 代码示例遵循当前最佳实践
- 翻译审核准确且符合文化背景 - 审核翻译准确性和文化适宜性
## 翻译系统 ## 翻译系统
### 自动翻译 ### 自动翻译
- 利用 GitHub Actions 和 co-op-translator 工作流 - 采用GitHub Actions 和 co-op-translator工作流
- 自动翻译成50多种语言 - 自动翻译成50多种语言
- 源文件位于主目录 - 源文件主目录
- 翻译文件保存在 `translations/{language-code}/` 目录 - 翻译文件置于 `translations/{语言代码}/` 目录
### 添加手动翻译改进 ### 手动翻译改进
1. 定位到 `translations/{language-code}/` 目录文件 1. 找到 `translations/{语言代码}/` 目录下的文件
2. 在保持结构的情况下进行改进 2. 保持结构完成改进
3. 确保代码示例功能正常 3. 确保代码示例功能正常
4. 测试本地化测验内容 4. 测试本地化测验内容
### 翻译元数据 ### 翻译元数据
翻译文件包含元数据头: 翻译文件包含元数据头:
```markdown ```markdown
<!-- <!--
CO_OP_TRANSLATOR_METADATA: CO_OP_TRANSLATOR_METADATA:
@ -290,120 +287,120 @@ CO_OP_TRANSLATOR_METADATA:
--> -->
``` ```
## 调试与故障排 ## 调试与故障排
### 常见问题 ### 常见问题
**测验应用无法启动** <strong>测验应用启动失败</strong>
- 检查 Node.js 版本(建议 v14+ - 检查Node.js版本推荐v14+
- 删除 `node_modules``package-lock.json`,重新运行 `npm install` - 删除 `node_modules``package-lock.json`,重新运行 `npm install`
- 检查端口冲突默认Vite 使用5173端口 - 检查端口冲突默认Vite使用端口5173
**API 服务器无法启动** **API服务器无法启动**
- 确认 Node.js 版本符合最低要求node >=10 - 确认Node.js版本满足最低要求node >=10
- 检查端口是否被占用 - 检查端口是否被占用
- 确保依赖已通过 `npm install` 安装 - 确认所有依赖安装完成(`npm install`
**浏览器扩展无法加载** <strong>浏览器扩展无法加载</strong>
- 确认 manifest.json 格式正确 - 检查manifest.json格式正确
- 查看浏览器控制台错误 - 查看浏览器控制台错误
- 按照浏览器特定扩展安装说明操作 - 遵守浏览器特有的扩展安装说明
**Python 聊天项目问题** **Python聊天项目问题**
- 确保安装 OpenAI 包:`pip install openai` - 确保安装OpenAI包`pip install openai`
- 确认 GITHUB_TOKEN 环境变量已设置 - 确认设置GITHUB_TOKEN环境变量
- 检查 GitHub Models 访问权限 - 检查GitHub Models访问权限
**Docsify 未能提供文档** **Docsify未能提供文档**
- 全局安装 docsify-cli`npm install -g docsify-cli` - 全局安装docsify-cli`npm install -g docsify-cli`
- 仓库根目录运行 - 仓库根目录运行
- 确认存在 `docs/_sidebar.md` - 确认存在 `docs/_sidebar.md`
### 开发环境建议 ### 开发环境提示
- 使用带 Live Server 扩展的 VS Code 运行 HTML 项目 - 使用VS Code并结合Live Server扩展运行HTML项目
- 安装 ESLint Prettier 扩展保持一致格式 - 安装ESLint和Prettier扩展保持格式一致
- 利用浏览器开发工具调试 JavaScript - 利用浏览器开发工具调试JavaScript
- Vue 项目安装 Vue DevTools 浏览器扩展 - Vue项目安装Vue DevTools浏览器扩展
### 性能考虑 ### 性能注意事项
- 多语言50+)翻译文件数量大,全量克隆较大 - 多语言翻译文件数量众多50+),完全克隆体积较大
- 只处理内容时可使用浅克隆:`git clone --depth 1` - 若仅处理内容,使用浅克隆:`git clone --depth 1`
- 在处理英文内容时排除翻译目录搜索 - 处理英文内容时排除翻译文件搜索
- 初次运行npm install、Vite 构建)可能较慢 - 构建过程首次运行可能较慢npm installVite构建
## 安全注意事项 ## 安全注意事项
### 环境变量 ### 环境变量
- API 密钥绝不提交到仓库 - API密钥绝不提交到仓库
- 使用 `.env` 文件(已`.gitignore` - 使用 `.env` 文件(已`.gitignore`
- 在项目 README 中记录必需环境变量 - 在项目README中记录必需环境变量
### Python 项目 ### Python项目
- 使用虚拟环境:`python -m venv venv` - 使用虚拟环境:`python -m venv venv`
- 保持依赖更新 - 保持依赖更新
- GitHub 令牌应具备最小权限 - GitHub令牌需仅授予最小必要权限
### GitHub Models 访问 ### GitHub Models访问
- 需要个人访问令牌 (PAT) - 需个人访问令牌PAT
- 令牌应存储为环境变量 - 令牌作为环境变量存储
- 切勿提交令牌或凭证 - 绝不提交令牌或凭据
## 其他说明 ## 其他说明
### 目标受众 ### 目标受众
- 完全的网页开发初学 - 完全零基础网页开发
- 学生自学者 - 学生自学者
- 在课堂使用课程的教师 - 在课堂使用课程的教师
- 内容针对无障碍和逐步技能提升设计 - 内容设计注重无障碍及技能渐进提升
### 教育理念 ### 教育理念
- 基于项目的学习方法 - 基于项目的学习方法
- 频繁知识检测(测验) - 频繁知识检测(测验)
- 实践编练习 - 实践编练习
- 真实场景应用示 - 真实应用案
- 强调基础知识,先于框架学习 - 先打好基础核心,再学习框架
### 仓库维护 ### 仓库维护
- 活跃的学习者和贡献者社区 - 活跃的学习者和贡献者社区
- 定期更新依赖和内容 - 定期更新依赖和内容
- 维护者监控 issue 和讨论 - 维护者持续监控问题和讨论
- 通过 GitHub Actions 自动更新翻译 - 翻译更新通过GitHub Actions自动化
### 相关资源 ### 相关资源
- [Microsoft Learn 模块](https://docs.microsoft.com/learn/) - [微软Learn模块](https://docs.microsoft.com/learn/)
- [学生中心资源](https://docs.microsoft.com/learn/student-hub/) - [学生中心资源](https://docs.microsoft.com/learn/student-hub/)
- 推荐学习者使用 [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) - 推荐学习者使用[GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot)
- 额外课程:生成式 AI、数据科学、机器学习、物联网课程可用 - 还有生成式AI、数据科学、机器学习、物联网课程可选
### 特定项目操作指南 ### 特定项目使用
查看以下 README 获取详细项目说明 详见项目README
- `quiz-app/README.md` - Vue 3 测验应用 - `quiz-app/README.md` - Vue 3测验应用
- `7-bank-project/README.md` - 带身份验证的银行应用 - `7-bank-project/README.md` - 带身份验证的银行应用
- `5-browser-extension/README.md` - 浏览器扩展开发 - `5-browser-extension/README.md` - 浏览器扩展开发
- `6-space-game/README.md` - 基于 Canvas 的游戏开发 - `6-space-game/README.md` - Canvas画布游戏开发
- `9-chat-project/README.md` - AI 聊天助手项目 - `9-chat-project/README.md` - AI聊天助手项目
### 单体仓库结构 ### Monorepo结构
非传统单体仓库,本仓库包含多个独立项目: 然不是传统的monorepo仓库包含多个独立项目:
- 每节课程自包含 - 每个课程独立自成体系
- 项目之间不共享依赖 - 项目之间不共享依赖
- 可独开发项目,互不影响 - 可独开发项目不影响其他
- 克隆完整仓库可体验全课程 - 克隆整个仓库体验完整课程体系
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START --> <!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免责声明** **免责声明**
本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻译而成。尽管我们力求准确,但请注意自动翻译可能包含错误或不准确之处。原始语言的文件应被视为权威版本。对于重要信息,建议使用专业人工翻译。因使用本翻译内容而产生的任何误解或误释,我们概不负责 本文档已使用 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们力求准确,但请注意自动翻译可能包含错误或不准确之处。原始语言版本的文档应被视为权威来源。对于重要信息,建议使用专业人工翻译。因使用本翻译而产生的任何误解或误释,我们不承担任何责任
<!-- CO-OP TRANSLATOR DISCLAIMER END --> <!-- CO-OP TRANSLATOR DISCLAIMER END -->
Loading…
Cancel
Save