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

pull/1690/head
localizeflow[bot] 3 weeks ago
parent b97ab8d490
commit ee58750ae9

@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-02-06T11:46:38+00:00",
"translation_date": "2026-02-06T13:13:15+00:00",
"source_file": "AGENTS.md",
"language_code": "ms"
},

@ -2,27 +2,27 @@
## Gambaran Projek
Ini adalah repositori kurikulum pendidikan untuk mengajar asas pembangunan web kepada pemula. Kurikulum ini adalah kursus komprehensif selama 12 minggu yang dibangunkan oleh Microsoft Cloud Advocates, menampilkan 24 pelajaran praktikal yang merangkumi JavaScript, CSS, dan HTML.
Ini adalah repositori kurikulum pendidikan untuk mengajar asas-asas pembangunan web kepada pemula. Kurikulum ini adalah kursus komprehensif selama 12 minggu yang dibangunkan oleh Microsoft Cloud Advocates, menampilkan 24 pelajaran praktikal yang merangkumi JavaScript, CSS, dan HTML.
### Komponen Utama
- **Kandungan Pendidikan**: 24 pelajaran berstruktur yang disusun dalam modul berasaskan projek
- **Projek Praktikal**: Terrarium, Permainan Mengetik, Sambungan Pelayar, Permainan Angkasa, Aplikasi Perbankan, Penyunting Kod, dan Pembantu Sembang AI
- **Kuiz Interaktif**: 48 kuiz dengan 3 soalan setiap satu (penilaian sebelum/selepas pelajaran)
- **Sokongan Pelbagai Bahasa**: Terjemahan automatik ke 50+ bahasa melalui GitHub Actions
- **Teknologi**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (untuk projek AI)
- **Kandungan Pendidikan**: 24 pelajaran berstruktur yang diatur ke dalam modul berasaskan projek
- **Projek Praktikal**: Terrarium, Permainan Mengetik, Pelanjutan Penyemak Imbas, Permainan Angkasa, Aplikasi Perbankan, Penyunting Kod, dan Pembantu Chat AI
- **Kuiz Interaktif**: 48 kuiz dengan 3 soalan setiap satu (penilaian sebelum/selepas pelajaran)
- **Sokongan Pelbagai Bahasa**: Terjemahan automatik untuk lebih 50+ bahasa melalui GitHub Actions
- **Teknologi**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (untuk projek AI)
### Senibina
### Seni Bina
- Repositori pendidikan dengan struktur berasaskan pelajaran
- Setiap folder pelajaran mengandungi README, contoh kod, dan penyelesaian
- Projek berdiri sendiri dalam direktori berasingan (quiz-app, pelbagai projek pelajaran)
- Sistem terjemahan menggunakan GitHub Actions (co-op-translator)
- Dokumentasi disediakan melalui Docsify dan tersedia sebagai PDF
- Repositori pendidikan dengan struktur berasaskan pelajaran
- Setiap folder pelajaran mengandungi README, contoh kod, dan penyelesaian
- Projek berdiri sendiri dalam direktori berasingan (quiz-app, pelbagai projek pelajaran)
- Sistem terjemahan menggunakan GitHub Actions (co-op-translator)
- Dokumentasi disajikan melalui Docsify dan tersedia sebagai PDF
## Perintah Persediaan
Repositori ini terutamanya untuk penggunaan kandungan pendidikan. Untuk bekerja dengan projek tertentu:
Repositori ini terutamanya untuk penggunaan kandungan pendidikan. Untuk bekerja dengan projek spesifik:
### Persediaan Repositori Utama
@ -51,12 +51,12 @@ npm run lint # Jalankan ESLint
npm run format # Format dengan Prettier
```
### Projek Sambungan Pelayar
### Projek Pelanjutan Penyemak Imbas
```bash
cd 5-browser-extension/solution
npm install
# Ikuti arahan pemuatan pelanjutan khusus pelayar
# Ikuti arahan pemuatan sambungan khusus pelayar
```
### Projek Permainan Angkasa
@ -67,7 +67,7 @@ npm install
# Buka index.html dalam pelayar atau gunakan Live Server
```
### Projek Sembang (Backend Python)
### Projek Chat (Backend Python)
```bash
cd 9-chat-project/solution/backend/python
@ -80,29 +80,29 @@ python api.py
### Untuk Penyumbang Kandungan
1. **Fork repositori** ke akaun GitHub anda
2. **Clone fork anda** secara tempatan
3. **Buat cawangan baru** untuk perubahan anda
4. Buat perubahan pada kandungan pelajaran atau contoh kod
5. Uji sebarang perubahan kod dalam direktori projek yang relevan
6. Hantar pull request mengikut garis panduan penyumbangan
1. **Fork repositori** ke akaun GitHub anda
2. **Clone fork anda** secara lokal
3. **Buat cawangan baru** untuk perubahan anda
4. Buat perubahan pada kandungan pelajaran atau contoh kod
5. Uji sebarang perubahan kod dalam direktori projek yang berkaitan
6. Hantar pull request mengikut garis panduan sumbangan
### Untuk Pelajar
1. Fork atau clone repositori
2. Navigasi ke direktori pelajaran secara berurutan
3. Baca fail README untuk setiap pelajaran
4. Lengkapkan kuiz sebelum pelajaran di https://ff-quizzes.netlify.app/web/
5. Kerjakan contoh kod dalam folder pelajaran
6. Selesaikan tugasan dan cabaran
7. Ambil kuiz selepas pelajaran
1. Fork atau clone repositori
2. Navigasi ke direktori pelajaran secara berperingkat
3. Baca fail README untuk setiap pelajaran
4. Lengkapkan kuiz sebelum pelajaran di https://ff-quizzes.netlify.app/web/
5. Bekerja melalui contoh kod dalam folder pelajaran
6. Lengkapkan tugasan dan cabaran
7. Ambil kuiz selepas pelajaran
### Pembangunan Langsung
- **Dokumentasi**: Jalankan `docsify serve` di akar (port 3000)
- **Aplikasi Kuiz**: Jalankan `npm run dev` di direktori quiz-app
- **Projek**: Gunakan peluasan VS Code Live Server untuk projek HTML
- **Projek API**: Jalankan `npm start` di direktori API masing-masing
- **Dokumentasi**: Jalankan `docsify serve` di root (port 3000)
- **Aplikasi Kuiz**: Jalankan `npm run dev` dalam direktori quiz-app
- **Projek**: Gunakan sambungan Live Server VS Code untuk projek HTML
- **Projek API**: Jalankan `npm start` dalam direktori API masing-masing
## Arahan Ujian
@ -111,87 +111,87 @@ python api.py
```bash
cd quiz-app
npm run lint # Semak isu gaya kod
npm run build # Sahkan pembinaan berjaya
npm run build # Sahkan binaan berjaya
```
### Ujian API Bank
```bash
cd 7-bank-project/api
npm run lint # Semak masalah gaya kod
npm run lint # Semak isu gaya kod
node server.js # Sahkan pelayan bermula tanpa ralat
```
### Pendekatan Ujian Umum
- Ini adalah repositori pendidikan tanpa ujian automatik menyeluruh
- Ujian manual fokus pada:
- Contoh kod boleh dijalankan tanpa ralat
- Pautan dalam dokumentasi berfungsi dengan betul
- Pembinaan projek selesai dengan jayanya
- Contoh mengikuti amalan terbaik
- Ini adalah repositori pendidikan tanpa ujian automatik yang komprehensif
- Ujian manual memfokus pada:
- Contoh kod berjalan tanpa kesilapan
- Pautan dalam dokumentasi berfungsi dengan betul
- Pembinaan projek selesai dengan jayanya
- Contoh mengikut amalan terbaik
### Semakan Sebelum Hantar
### Pemeriksaan Pra-Penghantaran
- Jalankan `npm run lint` dalam direktori yang mempunyai package.json
- Sahkan pautan markdown sah
- Uji contoh kod dalam pelayar atau Node.js
- Pastikan terjemahan mengekalkan struktur yang betul
- Jalankan `npm run lint` dalam direktori yang memiliki package.json
- Sahkan pautan markdown adalah sah
- Uji contoh kod dalam penyemak imbas atau Node.js
- Periksa supaya terjemahan mengekalkan struktur dengan betul
## Garis Panduan Gaya Kod
### JavaScript
- Gunakan sintaksis ES6+ moden
- Ikuti konfigurasi ESLint piawai yang disediakan dalam projek
- Gunakan nama pemboleh ubah dan fungsi yang bermakna untuk kejelasan pendidikan
- Tambah komen yang menerangkan konsep untuk pelajar
- Format menggunakan Prettier di mana dikonfigurasi
- Gunakan sintaks ES6+ moden
- Ikuti konfigurasi ESLint standard yang disediakan dalam projek
- Gunakan nama pemboleh ubah dan fungsi yang bermakna untuk kejelasan pendidikan
- Tambah komen yang menjelaskan konsep kepada pelajar
- Format menggunakan Prettier di mana dikonfigurasikan
### HTML/CSS
- Elemen HTML5 semantik
- Prinsip reka bentuk responsif
- Konvensyen penamaan kelas yang jelas
- Komen menerangkan teknik CSS untuk pelajar
- Elemen HTML5 semantik
- Prinsip reka bentuk responsif
- Konvensyen penamaan kelas yang jelas
- Komen yang menerangkan teknik CSS untuk pelajar
### Python
- Garis panduan gaya PEP 8
- Contoh kod jelas dan edukatif
- Petunjuk jenis di mana berguna untuk pembelajaran
- Garis panduan gaya PEP 8
- Contoh kod yang jelas dan pendidikan
- Jenis petunjuk di mana membantu pembelajaran
### Dokumentasi Markdown
- Hierarki tajuk yang jelas
- Blok kod dengan spesifikasi bahasa
- Pautan ke sumber tambahan
- Tangkapan skrin dan imej dalam direktori `images/`
- Teks alt untuk imej bagi aksesibiliti
- Hierarki tajuk yang jelas
- Blok kod dengan spesifikasi bahasa
- Pautan kepada sumber tambahan
- Tangkapan skrin dan imej dalam direktori `images/`
- Teks alt untuk imej bagi aksesibiliti
### Organisasi Fail
### Pengurusan Fail
- Pelajaran dinamakan mengikut nombor secara berurutan (1-getting-started-lessons, 2-js-basics, dll.)
- Setiap projek mempunyai direktori `solution/` dan sering `start/` atau `your-work/`
- Imej disimpan dalam folder `images/` khusus pelajaran
- Terjemahan dalam struktur `translations/{language-code}/`
- Pelajaran bernombor berurutan (1-getting-started-lessons, 2-js-basics, dll.)
- Setiap projek mempunyai direktori `solution/` dan sering `start/` atau `your-work/`
- Imej disimpan dalam folder `images/` khusus pelajaran
- Terjemahan dalam struktur `translations/{language-code}/`
## Pembinaan dan Penghantaran
## Pembinaan dan Penempatan
### Penghantaran Aplikasi Kuiz (Azure Static Web Apps)
### Penempatan Aplikasi Kuiz (Azure Static Web Apps)
Aplikasi quiz-app dikonfigurasi untuk penghantaran Azure Static Web Apps:
quiz-app dikonfigurasikan untuk penempatan Azure Static Web Apps:
```bash
cd quiz-app
npm run build # Membuat folder dist/
# Mengedar melalui aliran kerja GitHub Actions pada tolak ke main
npm run build # Membina folder dist/
# Menyebarkan melalui aliran kerja GitHub Actions apabila push ke main
```
Konfigurasi Azure Static Web Apps:
- **Lokasi app**: `/quiz-app`
- **Lokasi output**: `dist`
- **Aliran kerja**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
Konfigurasi Azure Static Web Apps:
- **Lokasi aplikasi**: `/quiz-app`
- **Lokasi output**: `dist`
- **Aliran kerja**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Penjanaan PDF Dokumentasi
@ -204,79 +204,79 @@ npm run convert # Jana PDF dari docs
```bash
npm install -g docsify-cli # Pasang Docsify secara global
docsify serve # Hidangkan pada localhost:3000
docsify serve # Hidangkan di localhost:3000
```
### Pembinaan Spesifik Projek
### Pembinaan Khusus Projek
Setiap direktori projek mungkin mempunyai proses pembinaan sendiri:
- Projek Vue: `npm run build` untuk menghasilkan bundel produksi
- Projek statik: Tiada langkah binaan, layani fail terus
Setiap direktori projek mungkin mempunyai proses binaannya sendiri:
- Projek Vue: `npm run build` mencipta bundle produksi
- Projek statik: Tiada langkah binaan, hidangkan fail secara langsung
## Garis Panduan Pull Request
### Format Tajuk
Gunakan tajuk yang jelas dan deskriptif menunjukkan kawasan perubahan:
- `[Quiz-app] Tambah kuiz baru untuk pelajaran X`
- `[Lesson-3] Betulkan kesalahan taip dalam projek terrarium`
- `[Translation] Tambah terjemahan Sepanyol untuk pelajaran 5`
- `[Docs] Kemas kini arahan persediaan`
Gunakan tajuk yang jelas dan deskriptif menunjukkan kawasan perubahan:
- `[Quiz-app] Tambah kuiz baru untuk pelajaran X`
- `[Lesson-3] Betulkan kesilapan ejaan dalam projek terrarium`
- `[Translation] Tambah terjemahan Sepanyol untuk pelajaran 5`
- `[Docs] Kemas kini arahan persediaan`
### Semakan Wajib
### Pemeriksaan Wajib
Sebelum menghantar PR:
1. **Kualiti Kod**:
- Jalankan `npm run lint` dalam direktori projek yang terjejas
- Betulkan semua ralat dan amaran lint
1. **Kualiti Kod**:
- Jalankan `npm run lint` dalam direktori projek yang terkesan
- Betulkan semua kesilapan dan amaran linting
2. **Pengesahan Binaan**:
- Jalankan `npm run build` jika berkenaan
- Pastikan tiada ralat binaan
2. **Pengesahan Binaan**:
- Jalankan `npm run build` jika berkenaan
- Pastikan tiada ralat binaan
3. **Pengesahan Pautan**:
- Uji semua pautan markdown
- Sahkan rujukan imej berfungsi
3. **Pengesahan Pautan**:
- Uji semua pautan markdown
- Sahkan rujukan imej berfungsi
4. **Semakan Kandungan**:
- Semak ejaan dan tatabahasa
- Pastikan contoh kod betul dan mudah difahami
- Sahkan terjemahan mengekalkan maksud asal
4. **Semakan Kandungan**:
- Semak ejaan dan tatabahasa
- Pastikan contoh kod betul dan pendidikan
- Sahkan terjemahan mengekalkan maksud asal
### Keperluan Sumbangan
- Setuju dengan Microsoft CLA (semakan automatik pada PR pertama)
- Ikuti [Kod Etika Sumber Terbuka Microsoft](https://opensource.microsoft.com/codeofconduct/)
- Lihat [CONTRIBUTING.md](./CONTRIBUTING.md) untuk garis panduan terperinci
- Rujuk nombor isu dalam keterangan PR jika berkenaan
- Setuju dengan Microsoft CLA (semakan automatik di PR pertama)
- Ikuti [Kod Etika Sumber Terbuka Microsoft](https://opensource.microsoft.com/codeofconduct/)
- Lihat [CONTRIBUTING.md](./CONTRIBUTING.md) untuk garis panduan terperinci
- Rujuk nombor isu dalam penerangan PR jika berkenaan
### Proses Semakan
- PR disemak oleh penyelenggara dan komuniti
- Kejelasan pendidikan diutamakan
- Contoh kod harus mengikut amalan terbaik terkini
- Terjemahan disemak untuk ketepatan dan keaslian budaya
- PR disemak oleh penyelenggara dan komuniti
- Kejelasan pendidikan diutamakan
- Contoh kod harus mengikuti amalan terbaik semasa
- Terjemahan disemak dari segi ketepatan dan kesesuaian budaya
## Sistem Terjemahan
### Terjemahan Automatik
- Menggunakan GitHub Actions dengan aliran kerja co-op-translator
- Menterjemah ke 50+ bahasa secara automatik
- Fail sumber di direktori utama
- Fail terjemahan dalam direktori `translations/{language-code}/`
- Menggunakan GitHub Actions dengan aliran kerja co-op-translator
- Menterjemah ke lebih 50+ bahasa secara automatik
- Fail sumber dalam direktori utama
- Fail terjemahan dalam direktori `translations/{language-code}/`
### Menambah Penambahbaikan Terjemahan Manual
### Penambahan Penambahbaikan Terjemahan Manual
1. Cari fail di `translations/{language-code}/`
2. Buat penambahbaikan sambil mengekalkan struktur
3. Pastikan contoh kod kekal berfungsi
4. Uji sebarang kandungan kuiz yang dilokalkan
1. Cari fail dalam `translations/{language-code}/`
2. Lakukan penambahbaikan sambil mengekalkan struktur
3. Pastikan contoh kod kekal berfungsi
4. Uji sebarang kandungan kuiz yang dilokalkan
### Metadata Terjemahan
Fail terjemahan termasuk pengepala metadata:
Fail terjemahan termasuk header metadata:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -293,116 +293,116 @@ CO_OP_TRANSLATOR_METADATA:
### Isu Lazim
**Aplikasi kuiz gagal mula**:
- Semak versi Node.js (disyorkan v14+)
- Padam `node_modules` dan `package-lock.json`, jalankan `npm install` semula
- Semak konflik port (default: Vite guna port 5173)
**Aplikasi kuiz gagal dimulakan**:
- Periksa versi Node.js (v14+ disyorkan)
- Padamkan `node_modules` dan `package-lock.json`, jalankan `npm install` semula
- Periksa konflik port (default: Vite menggunakan port 5173)
**Server API tidak bermula**:
- Sahkan versi Node.js memenuhi minimum (node >=10)
- Semak sama ada port sudah digunakan
- Pastikan semua pergantungan dipasang dengan `npm install`
**Pelayan API tidak mula**:
- Sahkan versi Node.js memenuhi minimum (node >=10)
- Periksa jika port sudah digunakan
- Pastikan semua kebergantungan dipasang dengan `npm install`
**Sambungan pelayar tidak dimuatkan**:
- Sahkan format manifest.json betul
- Semak konsol pelayar untuk ralat
- Ikuti arahan pemasangan sambungan khusus pelayar
**Pelanjutan penyemak imbas tidak dimuat**:
- Sahkan manifest.json diformat dengan betul
- Periksa konsol penyemak imbas untuk ralat
- Ikuti arahan pemasangan pelanjutan khusus penyemak imbas
**Isu projek sembang Python**:
- Pastikan pakej OpenAI dipasang: `pip install openai`
- Sahkan pembolehubah persekitaran GITHUB_TOKEN diset
- Semak kebenaran akses GitHub Models
**Isu projek chat Python**:
- Pastikan pakej OpenAI dipasang: `pip install openai`
- Sahkan pembolehubah persekitaran GITHUB_TOKEN ditetapkan
- Periksa kebenaran akses Model GitHub
**Docsify tidak menyajikan dokumentasi**:
- Pasang docsify-cli secara global: `npm install -g docsify-cli`
- Jalankan dari direktori akar repositori
- Semak kewujudan `docs/_sidebar.md`
**Docsify tidak menyajikan dokumen**:
- Pasang docsify-cli secara global: `npm install -g docsify-cli`
- Jalankan dari direktori root repositori
- Periksa bahawa `docs/_sidebar.md` wujud
### Petua Persekitaran Pembangunan
- Gunakan VS Code dengan peluasan Live Server untuk projek HTML
- Pasang peluasan ESLint dan Prettier untuk format konsisten
- Gunakan DevTools pelayar untuk debug JavaScript
- Untuk projek Vue, pasang peluasan Vue DevTools pelayar
- Gunakan VS Code dengan sambungan Live Server untuk projek HTML
- Pasang sambungan ESLint dan Prettier untuk pemformatan konsisten
- Gunakan DevTools penyemak imbas untuk menyahpepijat JavaScript
- Untuk projek Vue, pasang sambungan penyemak imbas Vue DevTools
### Pertimbangan Prestasi
- Bilangan fail terjemahan yang besar (50+ bahasa) menyebabkan clone penuh besar
- Gunakan clone cetek jika hanya bekerja pada kandungan: `git clone --depth 1`
- Kecualikan terjemahan daripada carian apabila bekerja pada kandungan Bahasa Inggeris
- Proses binaan mungkin perlahan pada kali pertama (npm install, binaan Vite)
- Bilangan fail terjemahan yang banyak (50+ bahasa) menyebabkan clone penuh besar
- Gunakan shallow clone jika hanya bekerja pada kandungan: `git clone --depth 1`
- Kecualikan terjemahan daripada carian apabila bekerja pada kandungan Inggeris
- Proses binaan mungkin perlahan pada larian pertama (npm install, binaan Vite)
## Pertimbangan Keselamatan
### Pembolehubah Persekitaran
- Kunci API tidak pernah harus dimasukkan ke repositori
- Gunakan fail `.env` (sudah disenaraikan dalam `.gitignore`)
- Dokumentasikan pembolehubah persekitaran yang diperlukan dalam README projek
- Kunci API tidak boleh disimpan dalam repositori
- Gunakan fail `.env` (sudah dalam `.gitignore`)
- Dokumentasikan pembolehubah persekitaran yang diperlukan dalam README projek
### Projek Python
- Gunakan persekitaran maya: `python -m venv venv`
- Kemas kini pergantungan secara berkala
- Token GitHub harus mempunyai kebenaran minimum yang diperlukan
- Gunakan persekitaran maya: `python -m venv venv`
- Kekalkan kebergantungan dikemas kini
- Token GitHub harus mempunyai kebenaran minimum yang diperlukan
### Akses GitHub Models
### Akses Model GitHub
- Token Akses Peribadi (PAT) diperlukan untuk GitHub Models
- Token harus disimpan sebagai pembolehubah persekitaran
- Jangan sekali-kali komit token atau kelayakan
- Token Akses Peribadi (PAT) diperlukan untuk Model GitHub
- Token harus disimpan sebagai pembolehubah persekitaran
- Jangan sekali-kali simpan token atau kredensial dalam repo
## Nota Tambahan
### Sasaran Audiens
- Pemula lengkap dalam pembangunan web
- Pelajar dan pembelajar kendiri
- Guru yang menggunakan kurikulum dalam bilik darjah
- Kandungan direka untuk aksesibiliti dan pembinaan kemahiran secara berperingkat
- Pemula mutlak dalam pembangunan web
- Pelajar dan pembelajar kendiri
- Guru menggunakan kurikulum dalam bilik darjah
- Kandungan direka untuk aksesibiliti dan pembangunan kemahiran secara berperingkat
### Falsafah Pendidikan
- Pendekatan pembelajaran berasaskan projek
- Semakan pengetahuan yang kerap (kuiz)
- Latihan kod praktikal
- Contoh aplikasi dunia sebenar
- Fokus pada asas sebelum penggunaan rangka kerja
- Pendekatan pembelajaran berasaskan projek
- Semakan pengetahuan kerap (kuiz)
- Latihan praktikal menulis kod
- Contoh aplikasi dunia sebenar
- Fokus kepada asas sebelum rangka kerja
### Penyelenggaraan Repositori
- Komuniti pelajar dan penyumbang yang aktif
- Kemas kini berkala untuk pergantungan dan kandungan
- Isu dan perbincangan dipantau oleh penyelenggara
- Kemas kini terjemahan diotomatikkan melalui GitHub Actions
- Komuniti pelajar dan penyumbang yang aktif
- Kemas kini berkala ke kebergantungan dan kandungan
- Isu dan perbincangan dipantau oleh penyelenggara
- Kemas kini terjemahan diotomatikkan melalui GitHub Actions
### Sumber Berkaitan
- [Modul Microsoft Learn](https://docs.microsoft.com/learn/)
- [Sumber Student Hub](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) disyorkan untuk pelajar
- Kursus tambahan: AI Generatif, Sains Data, ML, kurikulum IoT tersedia
- [Modul Microsoft Learn](https://docs.microsoft.com/learn/)
- [Sumber Student Hub](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) disyorkan untuk pelajar
- Kursus tambahan: AI Generatif, Sains Data, ML, kurikulum IoT tersedia
### Bekerja dengan Projek Tertentu
### Bekerja dengan Projek Spesifik
Untuk arahan terperinci projek individu, rujuk fail README dalam:
- `quiz-app/README.md` - aplikasi kuiz Vue 3
- `7-bank-project/README.md` - aplikasi perbankan dengan pengesahan
- `5-browser-extension/README.md` - pembangunan sambungan pelayar
- `6-space-game/README.md` - pembangunan permainan berasaskan canvas
- `9-chat-project/README.md` - projek pembantu sembang AI
Untuk arahan terperinci tentang projek individu, rujuk fail README di:
- `quiz-app/README.md` - aplikasi kuiz Vue 3
- `7-bank-project/README.md` - aplikasi perbankan dengan pengesahan
- `5-browser-extension/README.md` - pembangunan pelanjutan penyemak imbas
- `6-space-game/README.md` - pembangunan permainan berasaskan canvas
- `9-chat-project/README.md` - projek pembantu chat AI
### Struktur Monorepo
Walaupun bukan monorepo tradisional, repositori ini mengandungi pelbagai projek bebas:
- Setiap pelajaran berdiri sendiri
- Projek tidak berkongsi pergantungan
- Bekerja pada projek individu tanpa mempengaruhi yang lain
- Clone keseluruhan repo untuk pengalaman kurikulum penuh
Walaupun bukan monorepo tradisional, repositori ini mengandungi pelbagai projek bebas:
- Setiap pelajaran berdiri sendiri
- Projek tidak berkongsi kebergantungan
- Bekerja pada projek individu tanpa menjejaskan projek lain
- Clone helaian repo untuk pengalaman kurikulum penuh
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Walaupun kami berusaha untuk mencapai ketepatan, sila ambil maklum bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya hendaklah dianggap sebagai sumber yang sahih. Untuk maklumat yang kritikal, terjemahan profesional oleh manusia adalah disyorkan. Kami tidak bertanggungjawab terhadap sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Walaupun kami berusaha untuk memastikan ketepatan, sila sedar bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidakakuratan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang sahih. Untuk maklumat penting, terjemahan profesional oleh manusia disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-02-06T11:48:59+00:00",
"translation_date": "2026-02-06T13:15:32+00:00",
"source_file": "AGENTS.md",
"language_code": "sw"
},

@ -2,27 +2,27 @@
## Muhtasari wa Mradi
Hii ni hifadhi ya mtaala wa elimu kwa ajili ya kufundisha misingi ya maendeleo ya wavuti kwa wanaoanza. Mtaala ni kozi kamili ya wiki 12 iliyotengenezwa na Microsoft Cloud Advocates, ukiwa na masomo 24 ya vitendo yanayohusu JavaScript, CSS, na HTML.
Hii ni hifadhi ya mtaala wa kielimu kwa ajili ya kufundisha misingi ya maendeleo ya wavuti kwa wanaoanza. Mtaala ni kozi kamili ya wiki 12 iliyoandaliwa na Microsoft Cloud Advocates, ikiwa na masomo 24 ya mazoezi juu ya JavaScript, CSS, na HTML.
### Vipengele Muhimu
- **Maudhui ya Elimu**: Masomo 24 yaliyopangwa katika moduli za mradi
- **Miradi ya Vitendo**: Terrarium, Mchezo wa Kuandika, Kiendelezi cha Kivinjari, Mchezo wa Anga, Programu ya Benki, Mhariri wa Msimbo, na Msaidizi wa Mazungumzo wa AI
- **Vikwazo vya Interakti**: Vikwazo 48 vyenye maswali 3 kila kimoja (tathmini kabla/baada ya somo)
- **Msaada wa Lugha Nyingi**: Tafsiri za moja kwa moja kwa lugha 50+ kupitia GitHub Actions
- **Mada za Elimu**: Masomo 24 yaliyopangwa kwa muundo wa moduli za mradi
- **Miradi ya Vitendo**: Terrarium, Mchezo wa Kuandika, Kiendelezi cha Kivinjari, Mchezo wa Anga, Programu ya Benki, Mhariri wa Msimbo, na Msaidizi wa AI wa Mazungumzo
- **Maswali ya Maingiliano**: Maswali 48 yenye maswali 3 kila moja (tathmini kabla/baada ya somo)
- **Msaada wa Lugha Mbalimbali**: Tafsiri za moja kwa moja za lugha zaidi ya 50 kupitia GitHub Actions
- **Teknolojia**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (kwa miradi ya AI)
### Usanifu
- Hifadhi ya elimu yenye muundo wa msingi wa masomo
- Hifadhi ya kielimu yenye muundo wa masomo
- Kila folda ya somo ina README, mifano ya msimbo, na suluhisho
- Miradi huru katika saraka tofauti (quiz-app, miradi mbalimbali ya somo)
- Mfumo wa tafsiri ukitumia GitHub Actions (co-op-translator)
- Nyaraka zinatolewa kupitia Docsify na zinapatikana pia kama PDF
- Nyaraka zinatolewa kupitia Docsify na zinapatikana kama PDF
## Amri za Kusanidi
## Amri za Usanidi
Hii hifadhi kwa kawaida ni kwa matumizi ya maudhui ya elimu. Kwa kufanya kazi na miradi maalum:
Hifadhi hii ni kwa matumizi ya masomo hasa. Kwa kufanya kazi na miradi maalum:
### Usanidi wa Hifadhi Kuu
@ -31,24 +31,24 @@ git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
cd Web-Dev-For-Beginners
```
### Usanidi wa Quiz App (Vue 3 + Vite)
### Usanidi wa Programu ya Quiz (Vue 3 + Vite)
```bash
cd quiz-app
npm install
npm run dev # Anzisha seva ya maendeleo
npm run dev # Anza seva ya maendeleo
npm run build # Tengeneza kwa ajili ya uzalishaji
npm run lint # Endesha ESLint
```
### Bank Project API (Node.js + Express)
### API ya Mradi wa Benki (Node.js + Express)
```bash
cd 7-bank-project/api
npm install
npm start # Anzisha seva ya API
npm start # Anza seva ya API
npm run lint # Endesha ESLint
npm run format # Panga kwa Prettier
npm run format # Panga na Prettier
```
### Miradi ya Kiendelezi cha Kivinjari
@ -56,7 +56,7 @@ npm run format # Panga kwa Prettier
```bash
cd 5-browser-extension/solution
npm install
# Fuata maelekezo ya upakiaji ya programu-jalizi maalum kwa kivinjari
# Fuata maagizo ya kupakua programu-jalizi maalum za kivinjari
```
### Miradi ya Mchezo wa Anga
@ -72,126 +72,126 @@ npm install
```bash
cd 9-chat-project/solution/backend/python
pip install openai
# Weka mabadiliko ya mazingira ya GITHUB_TOKEN
# Weka tofauti ya mazingira ya GITHUB_TOKEN
python api.py
```
## Mtiririko wa Maendeleo
### Kwa Watoa Maudhui
### Kwa Wachangiaji wa Maudhui
1. **Fungua hifadhi** kwenye akaunti yako ya GitHub
2. **Nakili hifadhi yako** kwa kompyuta yako
3. **Unda tawi jipya** kwa mabadiliko yako
1. **Fungua hifadhi ili iwe yako** kwenye akaunti yako ya GitHub
2. **Nakili hifadhi yako** ndani ya kompyuta yako
3. **Tengeneza tawi jipya** kwa mabadiliko yako
4. Fanya mabadiliko kwenye maudhui ya somo au mifano ya msimbo
5. Jaribu mabadiliko yoyote ya msimbo katika saraka husika za miradi
6. Wasilisha ombi la pull kufuata miongozo ya mchango
5. Jaribu mabadiliko ya msimbo katika saraka za miradi husika
6. Wasilisha maombi ya kuunganisha ikifuata miongozo ya mchango
### Kwa Wanafunzi
1. Fanya fork au nakili hifadhi
2. Elekea kwenye saraka za masomo mfululizo
3. Soma faili za README kwa kila somo
4. Kamilisha vikwazo vya kabla ya somo kwenye https://ff-quizzes.netlify.app/web/
5. Fanya kazi kupitia mifano ya msimbo katika folda za masomo
1. Fungua au nakili hifadhi
2. Tembea kwenye saraka za masomo kwa mpangilio
3. Soma faili za README kwa somo kila moja
4. Kamilisha maswali ya kabla ya somo kwenye https://ff-quizzes.netlify.app/web/
5. Fanya kazi kupitia mifano ya msimbo kwenye folda za masomo
6. Kamilisha kazi na changamoto
7. Fanya vikwazo vya baada ya somo
7. Fanya maswali ya baada ya somo
### Maendeleo Mtandaoni
### Maendeleo ya Moja kwa Moja
- **Nyaraka**: Endesha `docsify serve` kwenye mzizi (bandari 3000)
- **Quiz App**: Endesha `npm run dev` katika saraka ya quiz-app
- **Miradi**: Tumia ugani wa VS Code Live Server kwa miradi ya HTML
- **Miradi ya API**: Endesha `npm start` katika saraka za API husika
- **Programu ya Quiz**: Endesha `npm run dev` kwenye saraka ya quiz-app
- **Miradi**: Tumia nyongeza ya VS Code Live Server kwa miradi ya HTML
- **Miradi ya API**: Endesha `npm start` katika saraka husika za API
## Maelekezo ya Kupima
## Maelekezo ya Vipimo
### Kupima Quiz App
### Vipimo vya Programu ya Quiz
```bash
cd quiz-app
npm run lint # Angalia kwa masuala ya mtindo wa msimbo
npm run lint # Angalia matatizo ya mtindo wa msimbo
npm run build # Thibitisha ujenzi unafanikiwa
```
### Kupima Bank API
### Vipimo vya API ya Benki
```bash
cd 7-bank-project/api
npm run lint # Angalia masuala ya mtindo wa msimbo
node server.js # Hakiki kuwa seva inaanza bila makosa
npm run lint # Angalia kwa matatizo ya mtindo wa msimbo
node server.js # Thibitisha seva inaanza bila makosa
```
### Njia ya Kupima kwa Jumla
### Mbinu ya Jumla ya Vipimo
- Hii ni hifadhi ya elimu isiyo na mitihani kamili ya moja kwa moja
- Upimaji wa mikono unazingatia:
- Mifano ya msimbo inakimbia bila makosa
- Hii ni hifadhi ya kielimu isiyo na vipimo kamili vya moja kwa moja
- Vipimo vya manuari vinaangazia:
- Mifano ya msimbo inafanya kazi bila makosa
- Viungo katika nyaraka vinafanya kazi vizuri
- Ujenzi wa miradi unakamilika kwa mafanikio
- Mifano inafuata mbinu bora
- Ujenzi wa miradi unakamilika bila hitilafu
- Mifano inafuata mbinu bora za maendeleo
### Ukaguzi Kabla ya Kuwasilisha
- Endesha `npm run lint` katika saraka zilizo na package.json
- Thibitisha viungo vya markdown ni halali
- Jaribu mifano ya msimbo kwenye kivinjari au Node.js
- Angalia tafsiri zinadumisha muundo sahihi
- Endesha `npm run lint` kwenye saraka zilizo na package.json
- Hakiki viungo vya markdown viko sahihi
- Jaribu mifano ya msimbo kivinjari au Node.js
- Angalia tafsiri zilidumisha muundo bora
## Miongozo ya Mtindo wa Msimbo
### JavaScript
- Tumia sintaksia ya kisasa ya ES6+
- Fuata usanidi wa ESLint uliotolewa kwenye miradi
- Tumia majina ya maana kwa vigezo na kazi kwa uwazi wa elimu
- Ongeza maelezo kwa kuelezea dhana kwa wanafunzi
- Panga kwa kutumia Prettier pale panapotolewa usanidi
- Tumia muundo wa kisasa wa ES6+
- Fuata usanidi wa ESLint uliowekwa katika miradi
- Tumia majina yanayoeleweka ya vigezo na kazi kwa uwazi wa kielimu
- Ongeza maelezo kuelezea dhana kwa wanafunzi
- Panga msimbo kwa kutumia Prettier pale panapowezekana
### HTML/CSS
- Vipengele vya semantic vya HTML5
- Kanuni za usanifu wa majibu (responsive)
- Magodoro wazi ya majina ya darasa
- Maelezo yanayoelezea mbinu za CSS kwa wanafunzi
- Vipengele vya HTML5 vyenye maana
- Kanuni za muundo wa kujibadilisha (responsive)
- Matumizi safi ya majina ya darasa
- Maelezo yanayofafanua mbinu za CSS kwa wanafunzi
### Python
- Miongozo ya mtindo wa PEP 8
- Mifano ya msimbo wazi na ya kielimu
- Vidokezo vya aina pale panaposaidia kujifunza
- Aina za data (type hints) pale panaposaidia kujifunza
### Nyaraka za Markdown
- Mlengo wazi wa vichwa vya habari
- Vizuizi vya msimbo vyenye utoaji lugha
- Viungo vya rasilimali za ziada
- Mnara wa vichwa ulio wazi
- Vizuizi vya msimbo vyenye lugha elekezi
- Viungo kwa rasilimali za ziada
- Picha na skrini katika saraka za `images/`
- Maandishi mbadala kwa picha kwa ufikiaji
- Maandishi ya alt kwa picha kwa upatikanaji
### Mpangilio wa Faili
### Muundo wa Faili
- Masomo nambari mfululizo (1-getting-started-lessons, 2-js-basics, n.k.)
- Masomo yamepitishwa nambari kwa mpangilio (1-getting-started-lessons, 2-js-basics, nk)
- Kila mradi una saraka za `solution/` na mara nyingi `start/` au `your-work/`
- Picha zinazohifadhiwa katika saraka za `images/` za somo husika
- Tafsiri katika muundo `translations/{language-code}/`
- Picha zinahifadhiwa katika saraka maalum za picha za somo `images/`
- Tafsiri zinapatikana katika muundo wa `translations/{language-code}/`
## Ujenzi na Utoaji
## Ujenzi na Uenezaji
### Utoaji wa Quiz App (Azure Static Web Apps)
### Uenezaji wa Programu ya Quiz (Azure Static Web Apps)
Quiz-app imewekwa kwa ajili ya utoaji wa Azure Static Web Apps:
quiz-app imewekwa kwa ajili ya uenezaji wa Azure Static Web Apps:
```bash
cd quiz-app
npm run build # Inaunda folda ya dist/
# Inapelekwa kupitia mtiririko wa kazi wa GitHub Actions wakati wa kusukuma kwenye main
# Inaweka kupitia workflow ya GitHub Actions wakati wa kusukuma kwenye main
```
Usanidi wa Azure Static Web Apps:
- **Mahali pa App**: `/quiz-app`
- **Mahali pa Matokeo**: `dist`
- **Mtiririko wa Kazi**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
Mipangilio ya Azure Static Web Apps:
- **Mahali pa app**: `/quiz-app`
- **Mahali pa pato**: `dist`
- **Mtiririko wa kazi**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Uundaji wa PDF wa Nyaraka
@ -203,23 +203,23 @@ npm run convert # Tengeneza PDF kutoka kwa docs
### Nyaraka za Docsify
```bash
npm install -g docsify-cli # Sakinisha Docsify kwa kiwango cha kimataifa
docsify serve # Hudumia kwenye localhost:3000
npm install -g docsify-cli # Sakinisha Docsify kimataifa
docsify serve # Tumikia kwenye localhost:3000
```
### Ujenzi wa Miradi Maalum
Kila saraka ya mradi inaweza kuwa na mchakato wake wa ujenzi:
- Miradi ya Vue: `npm run build` hutengeneza vifurushi vya uzalishaji
- Miradi isiyo na mabadiliko: Hakuna hatua ya kujenga, hudumisha faili moja kwa moja
- Miradi ya Vue: `npm run build` huunda vifurushi vya uzalishaji
- Miradi ya static: Hakuna hatua ya ujenzi, hudumu faili moja kwa moja
## Miongozo ya Ombi la Pull
## Miongozo ya Maombi ya Kuunganisha (Pull Request)
### Muundo wa Kichwa
Tumia vichwa vya wazi, vinaelezea eneo la mabadiliko:
- `[Quiz-app] Ongeza mtihani mpya wa somo X`
- `[Lesson-3] Rekebisha makosa ya kuandika katika mradi wa terrarium`
Tumia vichwa wazi na vinavyoeleza eneo la mabadiliko:
- `[Quiz-app] Ongeza mashindano mapya kwa somo X`
- `[Lesson-3] Rekebisha tahajia kwenye mradi wa terrarium`
- `[Translation] Ongeza tafsiri ya Kihispania kwa somo 5`
- `[Docs] Sasisha maelekezo ya usanidi`
@ -228,55 +228,55 @@ Tumia vichwa vya wazi, vinaelezea eneo la mabadiliko:
Kabla ya kuwasilisha PR:
1. **Ubora wa Msimbo**:
- Endesha `npm run lint` katika saraka za miradi zilizoathirika
- Rekebisha makosa na onyo zote za lint
- Endesha `npm run lint` kwenye saraka za miradi husika
- Rekebisha makosa yote ya lint na onyo
2. **Uhakiki wa Ujenzi**:
- Endesha `npm run build` ikiwa inahitajika
- Hakikisha hakuna makosa ya ujenzi
- Endesha `npm run build` kama inahitajika
- Hakikisha hakuna hitilafu za ujenzi
3. **Uthibitisho wa Viungo**:
3. **Uhakiki wa Viungo**:
- Jaribu viungo vyote vya markdown
- Thibitisha rejea za picha zinafanya kazi
- Hakiki kumbukumbu za picha zinafanya kazi
4. **Ukaguzi wa Maudhui**:
- Soma kwa uangalifu kwa makosa ya tahajia na sarufi
4. **Mapitio ya Maudhui**:
- Soma kwa usahihi tahajia na sarufi
- Hakikisha mifano ya msimbo ni sahihi na ya kielimu
- Thibitisha tafsiri zinahifadhi maana asili
- Hakiki tafsiri zinadumisha maana halisi
### Mahitaji ya Mchango
- Kubali Microsoft CLA (ukaguzi wa moja kwa moja kwenye PR ya kwanza)
- Fuata [Kanuni za Maadili za Chanzo Huria za Microsoft](https://opensource.microsoft.com/codeofconduct/)
- Kubali CLA ya Microsoft (ukaguzi wa moja kwa moja katika PR ya kwanza)
- Fuata [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- Angalia [CONTRIBUTING.md](./CONTRIBUTING.md) kwa miongozo ya kina
- Rejea nambari za masuala katika maelezo ya PR ikiwa zinahitajika
- Taja nambari za matatizo katika maelezo ya PR kama zinahusika
### Mchakato wa Ukaguzi
### Mchakato wa Mapitio
- PR zinakaguliwa na waendelezaji na jamii
- Uwazo wa elimu unazingatiwa kwa upendeleo
- Mifano ya msimbo ifuate mbinu bora za sasa
- Tafsiri zinakaguliwa kwa usahihi na muafaka wa kitamaduni
- PR hupitiwa na waendelezaji na jumuiya
- Uwiano wa uelewa wa kielimu unaangaliwa zaidi
- Mifano ya msimbo inapaswa kufuata mbinu bora za sasa
- Tafsiri hupitiwa kwa usahihi na unafaa wa kitamaduni
## Mfumo wa Tafsiri
### Tafsiri ya Moja kwa Moja
- Inatumia GitHub Actions na mtiririko wa co-op-translator
- Inatafsiri kwa lugha 50+ kiotomatiki
- Hutoa tafsiri za lugha 50+ moja kwa moja
- Faili za chanzo ziko kwenye saraka kuu
- Faili zilizotafsiriwa ziko `translations/{language-code}/`
- Faili za tafsiri ziko katika saraka za `translations/{language-code}/`
### Kuongeza Maboresho ya Tafsiri ya Mikono
### Kuongeza Maboresho ya Tafsiri kwa Mkono
1. Tafuta faili katika `translations/{language-code}/`
2. Fanya maboresho huku ukidumisha muundo
3. Hakikisha mifano ya msimbo inabaki kufanya kazi
4. Jaribu maudhui ya mtihani ya mahali pale
2. Fanya maboresho huku ukihifadhi muundo
3. Hakikisha mifano ya msimbo inaendelea kufanya kazi
4. Jaribu maudhui ya mtihani yaliyotafsiriwa
### Metadata ya Tafsiri
Faili zilizotafsiriwa zina kichwa cha metadata:
Faili za tafsiri zina kichwa cha metadata:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -289,120 +289,120 @@ CO_OP_TRANSLATOR_METADATA:
-->
```
## Ufafanuzi na Utatuzi wa Tatizo
## Uardishaji na Utatuzi wa Matatizo
### Masuala ya Kawaida
### Matatizo ya Kawaida
**Quiz app haiwezi kuanzishwa**:
- Angalia toleo la Node.js (v14+ linapendekezwa)
- Futa `node_modules` na `package-lock.json`, endesha tena `npm install`
- Angalia mzozo wa bandari (kawaida: Vite hutumia 5173)
**Programu ya quiz haianzi**:
- Angalia toleo la Node.js (inapendekezwa v14+)
- Futa `node_modules` na `package-lock.json`, kisha endesha `npm install` tena
- Angalia mgogoro wa bandari (kawaida: Vite hutumia bandari 5173)
**Seva ya API haianzi**:
- Hakiki toleo la Node.js linakidhi chini (node >=10)
- Angalia kama bandari tayari inatumika
- Hakikisha utegemezi wote umewekwa na `npm install`
- Hakikisha toleo la Node.js ni angalau (node >=10)
- Angalia kama bandari inatumika tayari
- Hakikisha kila tegemezi imewekwa kwa kuendesha `npm install`
**Kiendelezi cha kivinjari hakipaki**:
- Hakiki kuwa manifest.json imeandikwa vizuri
**Kiendelezi cha kivinjari hakizimwi**:
- Hakikisha `manifest.json` imeandikwa kwa usahihi
- Angalia konsole ya kivinjari kwa makosa
- Fuata maelekezo ya ufungaji ya kiendelezi maalum kwa kivinjari
- Fuata maelekezo maalum ya usakinishaji wa kiendelezi kwa kivinjari husika
**Masuala ya mradi wa mazungumzo wa Python**:
- Hakikisha kifurushi cha OpenAI kimesakinishwa: `pip install openai`
- Hakiki kuwa GITHUB_TOKEN iko katika mazingira
- Hakiki ruhusa za GitHub Models
**Matatizo ya mradi wa mazumgumzo wa Python**:
- Hakikisha kifurushi cha OpenAI kimewekwa: `pip install openai`
- Hakikisha mazingira ya GITHUB_TOKEN yamewekwa
- Angalia ruhusa za ufikiaji wa Modeli za GitHub
**Docsify haipeani nyaraka**:
**Docsify haionyeshi nyaraka**:
- Sakinisha docsify-cli kimataifa: `npm install -g docsify-cli`
- Endesha kutoka saraka kuu ya hifadhi
- Hakiki `docs/_sidebar.md` ipo
- Hakikisha `docs/_sidebar.md` ipo
### Vidokezo vya Mazingira ya Maendeleo
- Tumia VS Code na ugani wa Live Server kwa miradi ya HTML
- Sakinisha ugani wa ESLint na Prettier kwa ulinganifu wa mtindo
- Tumia zana za msanidi wa kivinjari kwa utatuzi wa JavaScript
- Kwa miradi ya Vue, sakinisha ugani wa Vue DevTools kwa kivinjari
- Tumia VS Code na nyongeza ya Live Server kwa miradi ya HTML
- Sakinisha nyongeza za ESLint na Prettier kwa upangaji thabiti
- Tumia DevTools za kivinjari kwa uardishaji wa JavaScript
- Kwa miradi ya Vue, sakinisha nyongeza ya Vue DevTools kwa kivinjari
### Masuala ya Utendaji
### Mambo ya Kuzingatia Utendaji
- Idadi kubwa ya faili za tafsiri (lugha 50+) inafanya nakala kamili kukubwa
- Tumia nakala ya mfinyanzi ikiwa unafanya kazi tu na maudhui: `git clone --depth 1`
- Tenga tafsiri katika utafutaji unapoendelea na maudhui ya Kiingereza
- Michakato ya ujenzi inaweza kuwa polepole kwa mzunguko wa kwanza (`npm install`, Vite build)
- Idadi kubwa ya faili za tafsiri (lugha 50+) hufanya nakala kamili kuwa kubwa
- Tumia nakala nyepesi ikiwa unafanya kazi kwenye maudhui pekee: `git clone --depth 1`
- Tenga tafsiri kutoka kwenye utafutaji ukiwa unafanya kazi na maudhui ya Kiingereza
- Mchakato wa ujenzi unaweza kuwa polepole mara ya kwanza (npm install, Vite build)
## Masuala ya Usalama
## Mambo ya Usalama
### Mabadiliko ya Mazingira
### Mazingira ya Mabadiliko ya Mazingira (Environment Variables)
- Funguo za API hazipaswi kuwekwa kwenye hifadhi
- Tumia faili za `.env` (zimedumuwa katika `.gitignore`)
- Andika mabadiliko ya mazingira yanayohitajika katika README za miradi
- Tumia faili za `.env` (zipo tayari kwenye `.gitignore`)
- Elezea mabadiliko yanayohitajika ya mazingira katika README za miradi
### Miradi ya Python
- Tumia mazingira ya virtual: `python -m venv venv`
- Dumuza utegemezi kwa toleo jipya
- Tokeni za GitHub ziwe na ruhusa ndogo zinazohitajika
- Tumia mazingira pepepe (virtual environments): `python -m venv venv`
- Hifadhi tegemezi zikiwa zimeboreshwa
- Tokeni za GitHub zinapaswa kuwa na ruhusa chache zinazohitajika
### Upatikanaji wa GitHub Models
### Ufikiaji wa Modeli za GitHub
- Tokeni za Utafutaji wa Kibinafsi (PAT) zinahitajika kwa GitHub Models
- Tokeni zipangwe kama mabadiliko ya mazingira
- Kamwe usiweke tokeni au taarifa za siri kwenye hifadhi
- Haja Tokeni za Ufikiaji wa Kibinafsi (PAT) kwa Modeli za GitHub
- Tokeni zihifadhiwe kama mabadiliko ya mazingira
- Tokeni au nywila zisizowekwa kwenye hifadhi
## Vidokezo Zaidi
### Walengwa
### Walengwa wa Mtaala
- Wanaoanza kabisa katika maendeleo ya wavuti
- Wanafunzi na waajiri binafsi
- Wanaoanza kabisa kwenye maendeleo ya wavuti
- Wanafunzi na wanaojifunza binafsi
- Walimu wanaotumia mtaala darasani
- Maudhui yameundwa kwa upatikanaji na ujenzi wa ujuzi hatua kwa hatua
- Maudhui yameundwa kwa upatikanaji na ujenzi wa ujuzi kwa hatua
### Falsafa ya Elimu
- Mbinu ya kujifunza kwa miradi
- Kupimwa mara kwa mara (vikwazo)
- Mazoezi ya kuandika msimbo kwa vitendo
- Mifano ya matumizi halisi
- Mtazamo wa misingi kabla ya mifumo ya kazi
- Vipimo vya mara kwa mara vya maarifa (maswali)
- Mazoezi ya vitendo ya uandishi wa msimbo
- Mifano halisi ya matumizi duniani
- Lengo ni misingi kabla ya mifumo
### Utunzaji wa Hifadhi
### Matunzo ya Hifadhi
- Jamii yenye uhai ya wanafunzi na wachangiaji
- Sasisho la mara kwa mara la utegemezi na maudhui
- Masuala na mijadala inaangaliwa na waendelezaji
- Sasisho la tafsiri hutekelezwa moja kwa moja kupitia GitHub Actions
- Jamii yenye shughuli ya wanafunzi na wachangiaji
- Sasisho za mara kwa mara za tegemezi na maudhui
- Masuala na mijadala hufuatiliwa na waendelezaji
- Sasisho za tafsiri zinasasishwa kiotomatiki kwa GitHub Actions
### Rasilimali Zinazohusiana
- [Moduli za Microsoft Learn](https://docs.microsoft.com/learn/)
- [Rasilimali za Student Hub](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) inapendekezwa kwa wanafunzi
- Kozi za ziada: AI ya kuzalisha, Sayansi ya Data, ML, mtaala wa IoT unapatikana
- Kozi za ziada: AI ya kizazi, Sayansi ya Takwimu, ML, masomo ya IoT yanapatikana
### Kufanya Kazi na Miradi Maalumu
### Kazi na Miradi Maalum
Kwa maelekezo ya kina kuhusu miradi, rejea faili za README katika:
- `quiz-app/README.md` - Programu ya quiz ya Vue 3
- `7-bank-project/README.md` - Programu ya benki yenye uthibitishaji
- `5-browser-extension/README.md` - Maendeleo ya kiendelezi cha kivinjari
- `6-space-game/README.md` - Maendeleo ya mchezo wa Canvas
- `9-chat-project/README.md` - Mradi wa msaidizi wa mazungumzo wa AI
Kwa maelekezo ya kina ya miradi binafsi, rejea faili za README katika:
- `quiz-app/README.md` - programu ya quiz ya Vue 3
- `7-bank-project/README.md` - programu ya benki yenye uthibitisho
- `5-browser-extension/README.md` - maendeleo ya kiendelezi cha kivinjari
- `6-space-game/README.md` - maendeleo ya mchezo wa canvas
- `9-chat-project/README.md` - mradi wa msaidizi wa mazungumzo AI
### Muundo wa Monorepo
Ingawa sio monorepo ya kawaida, hifadhi hii ina miradi mingi huru:
- Kila somo ni huru
- Miradi haishiriki utegemezi
Ingawa si monorepo ya kawaida, hifadhi hii ina miradi mingi huru:
- Kila somo ni huru na lina muundo wake
- Miradi haigawani tegemezi
- Fanya kazi kwenye miradi binafsi bila kuathiri mingine
- Nakili hifadhi yote kwa uzoefu kamili wa mtaala
- Nakili hifadhi nzima kwa uzoefu kamili wa mtaala
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Kiatli**:
Nyaraka hii imetafsiriwa kwa kutumia huduma ya tafsiri ya AI [Co-op Translator](https://github.com/Azure/co-op-translator). Ingawa tunajitahidi kwa usahihi, tafadhali fahamu kuwa tafsiri za kiotomatiki zinaweza kuwa na makosa au upungufu wa usahihi. Nyaraka ya asili katika lugha yake ya asili inapaswa kuchukuliwa kama chanzo cha mamlaka. Kwa taarifa muhimu, tafsiri ya kitaalamu inayofanywa na watu inashauriwa. Hatubebwi wajibu kwa kutoelewana au tafsiri potofu zinazotokana na matumizi ya tafsiri hii.
**Taarifa ya Kutojibika**:
Hati hii imetafsiriwa kwa kutumia huduma ya tafsiri ya AI [Co-op Translator](https://github.com/Azure/co-op-translator). Ingawa tunajitahidi kuwa sahihi, tafadhali fahamu kwamba tafsiri za kiotomatiki zinaweza kuwa na makosa au upotoshaji. Hati ya asili katika lugha yake ya asili inapaswa kuzingatiwa kama chanzo cha kuaminika. Kwa taarifa muhimu, tafsiri ya mtaalamu wa lugha inashauriwa. Hatubebwi na dhamana kwa maelewano au tafsiri potofu zinazotokana na matumizi ya tafsiri hii.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-02-06T11:47:47+00:00",
"translation_date": "2026-02-06T13:14:21+00:00",
"source_file": "AGENTS.md",
"language_code": "tl"
},

@ -2,27 +2,27 @@
## Project Overview
Ito ay isang edukasyonal na kurikulum na repository para sa pagtuturo ng mga pundasyon ng web development sa mga nagsisimula. Ang kurikulum ay isang komprehensibong 12-linggong kurso na binuo ng Microsoft Cloud Advocates, naglalaman ng 24 na praktikal na aralin na sumasaklaw sa JavaScript, CSS, at HTML.
Ito ay isang repositoryo ng pang-edukasyon na kurikulum para sa pagtuturo ng mga pangunahing kaalaman sa web development sa mga nagsisimula. Ang kurikulum ay isang komprehensibong 12-linggong kurso na binuo ng Microsoft Cloud Advocates, na nagtatampok ng 24 na praktikal na aralin na sumasaklaw sa JavaScript, CSS, at HTML.
### Key Components
- **Educational Content**: 24 na organisadong aralin na inayos sa mga project-based na modules
- **Educational Content**: 24 na nakaayos na mga aralin na naka-organisa sa mga module na batay sa proyekto
- **Practical Projects**: Terrarium, Typing Game, Browser Extension, Space Game, Banking App, Code Editor, at AI Chat Assistant
- **Interactive Quizzes**: 48 na pagsusulit na may tig-3 tanong bawat isa (pre/post-lesson assessments)
- **Interactive Quizzes**: 48 na mga pagsusulit na may tig-3 tanong bawat isa (pagsusulit bago/pagkatapos ng aralin)
- **Multi-language Support**: Awtomatikong pagsasalin para sa 50+ na mga wika gamit ang GitHub Actions
- **Technologies**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (para sa mga AI projects)
- **Technologies**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (para sa mga proyekto ng AI)
### Architecture
- Educational repository na may leksyon na nakaayos ayon sa aralin
- Educational na repositoryo na may istruktura batay sa mga aralin
- Bawat folder ng aralin ay naglalaman ng README, mga halimbawa ng code, at mga solusyon
- Mga standalone na proyekto sa hiwalay na mga direktoryo (quiz-app, iba't ibang mga proyekto ng aralin)
- Sistema ng pagsasalin gamit ang GitHub Actions (co-op-translator)
- Dokumentasyon na isinusilbi gamit ang Docsify at available bilang PDF
- Systema ng pagsasalin gamit ang GitHub Actions (co-op-translator)
- Dokumentasyon na pinagsisilbihan gamit ang Docsify at available bilang PDF
## Setup Commands
Ang repository na ito ay pangunahing para sa pag-consume ng edukasyonal na nilalaman. Para sa pagtatrabaho sa mga partikular na proyekto:
Ang repositoryong ito ay pangunahing para sa paggamit ng nilalamang pang-edukasyon. Para magtrabaho sa mga tiyak na proyekto:
### Main Repository Setup
@ -37,7 +37,7 @@ cd Web-Dev-For-Beginners
cd quiz-app
npm install
npm run dev # Simulan ang development server
npm run build # Gumawa para sa production
npm run build # I-build para sa produksyon
npm run lint # Patakbuhin ang ESLint
```
@ -56,7 +56,7 @@ npm run format # I-format gamit ang Prettier
```bash
cd 5-browser-extension/solution
npm install
# Sundin ang mga tagubilin sa pag-load ng extension na partikular sa browser
# Sundin ang mga tagubilin sa pag-load ng extension na tukoy sa browser
```
### Space Game Projects
@ -80,29 +80,29 @@ python api.py
### For Content Contributors
1. **I-fork ang repository** sa iyong GitHub account
2. **I-clone ang iyong fork** lokál
3. **Gumawa ng bagong sangay (branch)** para sa iyong mga pagbabago
4. Gawin ang mga pagbabago sa nilalaman ng aralin o mga halimbawa ng code
5. Subukan ang anumang pagbabago sa code sa mga angkop na direktoryo ng proyekto
6. Mag-submit ng pull requests ayon sa mga gabay sa kontribusyon
1. **I-fork ang repositoryo** sa iyong GitHub account
2. **I-clone ang iyong fork** nang lokal
3. **Gumawa ng bagong branch** para sa iyong mga pagbabago
4. Gumawa ng mga pagbabago sa nilalaman ng aralin o mga halimbawa ng code
5. Subukan ang anumang mga pagbabago sa code sa mga kaugnay na direktoryo ng proyekto
6. Mag-submit ng pull request ayon sa mga alituntunin ng kontribusyon
### For Learners
1. I-fork o i-clone ang repository
2. Mag-navigate sa mga direktoryo ng aralin nang sunod-sunod
3. Basahin ang mga file na README para sa bawat aralin
4. Tapusin ang mga pre-lesson na pagsusulit sa https://ff-quizzes.netlify.app/web/
5. Gawin ang mga halimbawa ng code sa mga folder ng aralin
6. Tapusin ang mga asignatura at hamon
7. Sagutan ang mga post-lesson na pagsusulit
1. I-fork o i-clone ang repositoryo
2. Pumunta sa mga direktoryo ng aralin nang sunud-sunod
3. Basahin ang mga README file para sa bawat aralin
4. Kumpletuhin ang pre-lesson quizzes sa https://ff-quizzes.netlify.app/web/
5. Trabahuhin ang mga halimbawa ng code sa mga folder ng aralin
6. Kumpletuhin ang mga assignment at hamon
7. Kunin ang post-lesson quizzes
### Live Development
- **Dokumentasyon**: Patakbuhin ang `docsify serve` sa root (port 3000)
- **Documentation**: Patakbuhin ang `docsify serve` sa root (port 3000)
- **Quiz App**: Patakbuhin ang `npm run dev` sa direktoryo ng quiz-app
- **Mga Proyekto**: Gamitin ang VS Code Live Server extension para sa mga HTML na proyekto
- **API Projects**: Patakbuhin ang `npm start` sa kaukulang mga direktoryo ng API
- **Projects**: Gamitin ang VS Code Live Server extension para sa mga HTML na proyekto
- **API Projects**: Patakbuhin ang `npm start` sa kani-kanilang mga direktoryo ng API
## Testing Instructions
@ -110,7 +110,7 @@ python api.py
```bash
cd quiz-app
npm run lint # Suriin ang mga isyu sa estilo ng code
npm run lint # Suriin ang mga isyu sa istilo ng code
npm run build # Tiyakin na matagumpay ang build
```
@ -124,57 +124,57 @@ node server.js # Tiyakin na nagsisimula ang server nang walang mga error
### General Testing Approach
- Ito ay isang edukasyonal na repository na walang komprehensibong automated tests
- Manual testing ay nakatuon sa:
- Mga halimbawa ng code ay tumatakbo nang walang error
- Mga link sa dokumentasyon ay gumagana nang tama
- Ang mga build ng proyekto ay matagumpay na nakumpleto
- Mga halimbawa ay sumusunod sa pinakamahusay na mga gawain
- Ito ay isang pang-edukasyon na repositoryo na walang komprehensibong automated tests
- Manual na pagsubok ay nakatuon sa:
- Mga halimbawa ng code na tumatakbo nang walang error
- Mga link sa dokumentasyon na gumagana nang tama
- Matagumpay na pagtatayo ng proyekto
- Mga halimbawa ay sumusunod sa mga pinakamahusay na gawain
### Pre-submission Checks
- Patakbuhin ang `npm run lint` sa mga direktoryo na may package.json
- Siguraduhing wasto ang mga markdown na link
- Patakbuhin ang `npm run lint` sa mga direktoryong may package.json
- Siguraduhing valid ang mga markdown link
- Subukan ang mga halimbawa ng code sa browser o Node.js
- Tingnan na ang mga pagsasalin ay nananatili ang tamang estruktura
- Suriin na ang mga pagsasalin ay nananatili ang wastong istruktura
## Code Style Guidelines
### JavaScript
- Gumamit ng modernong ES6+ na syntax
- Sundin ang pamantayang ESLint configurations na ibinigay sa mga proyekto
- Gumamit ng makabuluhang mga variable at pangalan ng function para sa kalinawan ng edukasyon
- Gamitin ang makabagong ES6+ na syntax
- Sundin ang karaniwang ESLint na mga configuration na ibinigay sa mga proyekto
- Gumamit ng makahulugang mga pangalan ng variable at function para sa kalinawan sa pag-aaral
- Magdagdag ng mga komento na nagpapaliwanag ng mga konsepto para sa mga nag-aaral
- I-format gamit ang Prettier kung ito ay naka-configure
- I-format gamit ang Prettier kung saan naka-configure
### HTML/CSS
- Semantic na mga elemento ng HTML5
- Mga prinsipyo ng responsive design
- Malinaw na mga klaseng pangalan
- Malinaw na mga konbensiyon sa pagpapangalan ng klase
- Mga komento na nagpapaliwanag ng mga teknik sa CSS para sa mga nag-aaral
### Python
- Pamantayan ng estilo ng PEP 8
- Malilinaw, edukasyonal na mga halimbawa ng code
- Mga type hint kung nakatutulong sa pag-aaral
- Mga gabay sa istilo ng PEP 8
- Malinaw, pang-edukasyong mga halimbawa ng code
- Mga type hint kung nakakatulong sa pag-aaral
### Markdown Documentation
- Malinaw na hierarchy ng mga heading
- Code blocks na may pagtukoy ng wika
- Mga code block na may pagtukoy sa wika
- Mga link sa karagdagang mga mapagkukunan
- Mga screenshot at larawan sa `images/` na mga direktoryo
- Alt text para sa mga larawan para sa accessibility
### File Organization
- Mga aralin na naka-number nang sunud-sunod (1-getting-started-lessons, 2-js-basics, atbp.)
- Bawat proyekto ay may `solution/` at madalas ay `start/` o `your-work/` na mga direktoryo
- Mga larawan ay nakaimbak sa mga folder ng `images/` na para sa partikular na aralin
- Mga pagsasalin ay nasa estrukturang `translations/{language-code}/`
- Mga aralin na naka-numero nang sunud-sunod (1-getting-started-lessons, 2-js-basics, atbp.)
- Bawat proyekto ay may `solution/` at kadalasang `start/` o `your-work/` na mga direktoryo
- Mga larawan na naka-imbak sa lesson-specific na `images/` na mga folder
- Mga pagsasalin sa istruktura na `translations/{language-code}/`
## Build and Deployment
@ -184,7 +184,7 @@ Ang quiz-app ay naka-configure para sa Azure Static Web Apps deployment:
```bash
cd quiz-app
npm run build # Gumagawa ng dist/ na folder
npm run build # Lumilikha ng folder na dist/
# Nagde-deploy gamit ang GitHub Actions workflow kapag may push sa main
```
@ -197,31 +197,31 @@ Azure Static Web Apps configuration:
```bash
npm install # I-install ang docsify-to-pdf
npm run convert # Bumuo ng PDF mula sa docs
npm run convert # Gumawa ng PDF mula sa docs
```
### Docsify Documentation
```bash
npm install -g docsify-cli # I-install ang Docsify nang global
npm install -g docsify-cli # I-install ang Docsify nang globally
docsify serve # I-serve sa localhost:3000
```
### Project-specific Builds
Bawat direktoryo ng proyekto ay maaaring may sariling proseso ng build:
- Vue projects: `npm run build` na lumilikha ng production bundles
- Static projects: Walang build step, direktang pagseserbisyo ng mga file
Bawat direktoryo ng proyekto ay maaaring magkaroon ng sariling proseso ng build:
- Mga proyekto ng Vue: `npm run build` na lumilikha ng production bundles
- Mga static na proyekto: Walang build step, direktang pinagsisilbihan ang mga file
## Pull Request Guidelines
### Title Format
Gumamit ng malinaw, naglalarawang mga titulo na nagpapahiwatig ng lugar ng pagbabago:
- `[Quiz-app] Add new quiz for lesson X`
- `[Lesson-3] Fix typo in terrarium project`
- `[Translation] Add Spanish translation for lesson 5`
- `[Docs] Update setup instructions`
Gumamit ng malinaw, deskriptibong mga pamagat na nagpapahiwatig ng bahagi ng pagbabago:
- `[Quiz-app] Magdagdag ng bagong quiz para sa lesson X`
- `[Lesson-3] Ayusin ang typo sa terrarium project`
- `[Translation] Magdagdag ng pagsasalin sa Espanyol para sa lesson 5`
- `[Docs] I-update ang mga tagubilin sa setup`
### Required Checks
@ -229,54 +229,54 @@ Bago magsumite ng PR:
1. **Kalidad ng Code**:
- Patakbuhin ang `npm run lint` sa mga apektadong direktoryo ng proyekto
- Ayusin lahat ng linting error at warning
- Ayusin lahat ng linting errors at warnings
2. **Build Verification**:
- Patakbuhin ang `npm run build` kung naaangkop
- Siguraduhing walang error sa build
- Siguraduhing walang build errors
3. **Link Validation**:
- Subukan lahat ng markdown na mga link
- Siguraduhin na gumagana ang mga image reference
- Subukan ang lahat ng markdown links
- Siguraduhing gumagana ang mga reference ng imahe
4. **Review ng Nilalaman**:
- Proofread para sa baybay at gramatika
4. **Content Review**:
- Proofread para sa spelling at grammar
- Siguraduhing tama at pang-edukasyon ang mga halimbawa ng code
- I-verify na ang mga pagsasalin ay nananatili ang orihinal na kahulugan
- Suriin na nananatili ang orihinal na kahulugan ng mga pagsasalin
### Contribution Requirements
- Sumang-ayon sa Microsoft CLA (awtomatikong tseke sa unang PR)
- Sundin ang [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- Tingnan ang [CONTRIBUTING.md](./CONTRIBUTING.md) para sa detalyadong gabay
- Banggitin ang mga numero ng isyu sa deskripsyon ng PR kung naaangkop
- Tingnan ang [CONTRIBUTING.md](./CONTRIBUTING.md) para sa mga detalyadong alituntunin
- Banggitin ang mga numero ng isyu sa paglalarawan ng PR kung naaangkop
### Review Process
- PRs ay sinusuri ng mga tagapag-maintain at community
- Ang mga PR ay nire-review ng mga tagapamahala at ng komunidad
- Prayoridad ang kalinawan sa edukasyon
- Dapat sundin ng mga halimbawa ng code ang kasalukuyang pinakamahusay na mga gawain
- Ang mga pagsasalin ay sinusuri para sa katumpakan at angkop na kultura
- Dapat sundin ng mga halimbawa ng code ang kasalukuyang pinakamahusay na gawain
- Ang mga pagsasalin ay nirereview para sa katumpakan at kultural na pagkakabagay
## Translation System
### Automated Translation
- Gumagamit ng GitHub Actions gamit ang co-op-translator workflow
- Nagsasalin sa 50+ na mga wika nang awtomatiko
- Mga source file sa pangunahing mga direktoryo
- Mga naisaling file sa `translations/{language-code}/` na mga direktoryo
- Ginagamit ang GitHub Actions kasama ang workflow na co-op-translator
- Awtomatikong nagsasalin sa 50+ na mga wika
- Mga source file sa mga pangunahing direktoryo
- Mga isinalin na file sa `translations/{language-code}/` na mga direktoryo
### Adding Manual Translation Improvements
1. Hanapin ang file sa `translations/{language-code}/`
2. Gawin ang mga pagpapabuti habang pinapanatili ang estruktura
3. Siguraduhin na ang mga halimbawa ng code ay nananatiling gumagana
4. Subukan ang anumang lokal na nilalaman ng pagsusulit
2. Gumawa ng mga pagpapabuti habang pinapanatili ang istruktura
3. Siguraduhing nananatiling gumagana ang mga halimbawa ng code
4. Subukan ang anumang lokal na contenido ng quiz
### Translation Metadata
Ang naisaling mga file ay may metadata header:
Ang mga isinaling file ay may kasamang metadata header:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -294,115 +294,115 @@ CO_OP_TRANSLATOR_METADATA:
### Common Issues
**Quiz app fails to start**:
- Suriin ang bersyon ng Node.js (v14+ ang rekomendado)
- Suriin ang bersyon ng Node.js (inirerekumenda ang v14+)
- Burahin ang `node_modules` at `package-lock.json`, patakbuhin muli ang `npm install`
- Suriin kung may conflict sa port (default: Vite ay gumagamit ng port 5173)
- Suriin ang conflicts sa port (default: Vite ay gumagamit ng port 5173)
**API server won't start**:
- Tiyaking ang bersyon ng Node.js ay sapat (node >=10)
- Tingnan kung ang port ay ginagamit na
- Siguraduhing na-install ang lahat ng dependencies gamit ang `npm install`
- Tiyakin na ang bersyon ng Node.js ay hindi bababa sa (node >=10)
- Suriin kung ang port ay ginagamit na
- Siguraduhing naka-install lahat ng dependencies gamit ang `npm install`
**Browser extension won't load**:
- Siguraduhing tama ang format ng manifest.json
- Tingnan ang console ng browser para sa mga error
- Sundin ang mga instruksiyon para sa pag-install ng browser-specific extension
- Siguraduhing maayos ang format ng manifest.json
- Suriin ang browser console para sa mga error
- Sundin ang mga tagubilin sa pag-install ng extension para sa partikular na browser
**Python chat project issues**:
- Siguraduhing naka-install ang OpenAI package: `pip install openai`
- Tiyaking naka-set ang GITHUB_TOKEN environment variable
- Suriin ang mga permiso sa GitHub Models access
- Tiyakin na nakaset ang GITHUB_TOKEN environment variable
- Suriin ang mga pahintulot para sa GitHub Models
**Docsify not serving docs**:
- Mag-install ng docsify-cli globally: `npm install -g docsify-cli`
- Patakbuhin mula sa root directory ng repository
- Siguraduhing nandiyan ang `docs/_sidebar.md`
- I-install ang docsify-cli globally: `npm install -g docsify-cli`
- Patakbuhin mula sa root directory ng repositoryo
- Suriin na ang `docs/_sidebar.md` ay umiiral
### Development Environment Tips
- Gamitin ang VS Code na may Live Server extension para sa mga HTML na proyekto
- Mag-install ng ESLint at Prettier extensions para sa consistent na pag-format
- Gamitin ang browser DevTools para mag-debug ng JavaScript
- Para sa Vue projects, mag-install ng Vue DevTools browser extension
- Mag-install ng ESLint at Prettier extensions para sa pare-parehong pag-format
- Gamitin ang browser DevTools para sa pag-debug ng JavaScript
- Para sa mga proyekto ng Vue, mag-install ng Vue DevTools browser extension
### Performance Considerations
- Maraming naisaling mga file (50+ na mga wika) kaya malaki ang full clones
- Gumamit ng shallow clone kung nilalaman lang ang pinagtatrabahuhan: `git clone --depth 1`
- Ang malaking bilang ng mga isinaling file (50+ wika) ay nangangahulugan ng malalaking full clones
- Gamitin ang shallow clone kung nilalaman lang ang tinatrabaho: `git clone --depth 1`
- I-exclude ang mga pagsasalin mula sa paghahanap kapag nagtatrabaho sa English na nilalaman
- Ang mga proseso ng build ay maaaring mabagal sa unang run (npm install, Vite build)
- Ang mga proseso sa build ay maaaring mabagal sa unang takbo (npm install, Vite build)
## Security Considerations
### Environment Variables
- Huwag kailanman i-commit ang API keys sa repository
- Gumamit ng `.env` files (naka-lista na sa `.gitignore`)
- I-dokumenta ang mga kinakailangang environment variables sa mga README ng proyekto
- Ang mga API key ay hindi dapat i-commit sa repositoryo
- Gamitin ang `.env` files (na naka-ignore na sa `.gitignore`)
- I-dokumento ang mga kailangang environment variables sa mga README ng proyekto
### Python Projects
- Gumamit ng virtual environments: `python -m venv venv`
- Panatilihing updated ang dependencies
- Ang mga GitHub token ay dapat may minimal na kinakailangang permiso
- Gamitin ang virtual environments: `python -m venv venv`
- Panatilihing updated ang mga dependencies
- Ang mga GitHub token ay dapat may pinakamababang kinakailangang mga pahintulot
### GitHub Models Access
- Kailangan ang Personal Access Tokens (PAT) para sa GitHub Models
- Kinakailangang Personal Access Tokens (PAT) para sa GitHub Models
- Ang mga token ay dapat itago bilang environment variables
- Huwag kailanman i-commit ang mga token o credentials
- Huwag kailanman i-commit ang mga token o kredensyal
## Additional Notes
### Target Audience
- Ganap na mga nagsisimula sa web development
- Mag-aaral at mga nag-aaral mag-isa
- Mga guro na gumagamit ng kurikulum sa mga silid-aralan
- Nilalaman ay idinisenyo para sa accessibility at unti-unting pagbuo ng kasanayan
- Mga ganap na nagsisimula sa web development
- Mga estudyante at mga self-learner
- Mga guro na gumagamit ng kurikulum sa klase
- Nilalaman ay dinisenyo para sa accessibility at unti-unting pagbuo ng kasanayan
### Educational Philosophy
- Project-based na pamamaraan sa pagkatuto
- Madalas na pagsusuri ng kaalaman (mga pagsusulit)
- Praktikal na mga coding exercise
- Mga halimbawa ng totoong aplikasyon
- Pokus sa mga pundasyon bago ang frameworks
- Pagtuturo gamit ang proyekto bilang batayan
- Madalas na pagsusuri sa kaalaman (quizzes)
- Hands-on na mga ehersisyo sa pagkocode
- Mga halimbawa ng aplikasyon sa totoong mundo
- Pokus sa mga pangunahing kaalaman bago ang mga framework
### Repository Maintenance
- Aktibong komunidad ng mga nag-aaral at mga kontribyutor
- Regular na pag-update sa dependencies at nilalaman
- Issues at diskusyon ay minomonitor ng mga tagapag-maintain
- Mga update sa pagsasalin ay awtomatiko gamit ang GitHub Actions
- Aktibong komunidad ng mga nag-aaral at mga contributor
- Regular na pag-update sa mga dependencies at nilalaman
- Mga isyu at diskusyon ay minomonitor ng mga tagapamahala
- Ang pag-update ng mga pagsasalin ay awtomatiko sa pamamagitan ng GitHub Actions
### Related Resources
- [Microsoft Learn modules](https://docs.microsoft.com/learn/)
- [Student Hub resources](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) na inirerekomenda para sa mga nag-aaral
- Mga karagdagang kurso: Generative AI, Data Science, ML, IoT curricula ay available
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) inirerekomenda para sa mga nag-aaral
- Karagdagang mga kurso: Generative AI, Data Science, ML, IoT curricula available
### Working with Specific Projects
Para sa detalyadong mga instruksiyon sa mga indibidwal na proyekto, sumangguni sa mga README file sa:
Para sa detalyadong tagubilin sa mga indibidwal na proyekto, tingnan ang mga README files sa:
- `quiz-app/README.md` - Vue 3 quiz application
- `7-bank-project/README.md` - Banking application na may authentication
- `5-browser-extension/README.md` - Pag-develop ng browser extension
- `6-space-game/README.md` - Canvas-based na game development
- `6-space-game/README.md` - Canvas-based na pag-develop ng laro
- `9-chat-project/README.md` - AI chat assistant project
### Monorepo Structure
Bagamat hindi tradisyunal na monorepo, ang repository na ito ay naglalaman ng maraming independiyenteng mga proyekto:
- Bawat aralin ay sarado at kumpleto sa sarili
- Hindi nagbabahagi ng dependencies ang mga proyekto
- Maaaring magtrabaho sa mga indibidwal na proyekto nang hindi naaapektuhan ang iba
- I-clone ang buong repo para sa buong karanasan ng kurikulum
Bagamat hindi isang tradisyunal na monorepo, naglalaman ang repositoryong ito ng maraming independiyenteng proyekto:
- Bawat aralin ay self-contained
- Hindi nagbabahagi ng mga dependency ang mga proyekto
- Maaaring magtrabaho sa mga indibidwal na proyekto nang hindi naaapektuhan ang iba pa
- I-clone ang buong repo para sa buong kurikulum na karanasan
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Paalala**:
Ang dokumentong ito ay isinalin gamit ang AI translation service na [Co-op Translator](https://github.com/Azure/co-op-translator). Bagamat aming pinagsisikapan ang katumpakan, pakatandaan na ang mga awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o di-tumpak na impormasyon. Ang orihinal na dokumento sa orihinal nitong wika ang dapat ituring na pangunahing sanggunian. Para sa mahahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang hindi pagkakaunawaan o maling interpretasyon na maaaring magmula sa paggamit ng pagsasaling ito.
**Paunawa**:
Ang dokumentong ito ay isinalin gamit ang AI translation service na [Co-op Translator](https://github.com/Azure/co-op-translator). Bagamat sinisikap naming maging tumpak, pakatandaan na ang mga awtomatikong pagsasalin ay maaaring may mga pagkakamali o di-katumpakan. Ang orihinal na dokumento sa orihinal nitong wika ang dapat ituring na opisyal na sanggunian. Para sa mahahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang hindi pagkakaintindihan o maling interpretasyon mula sa paggamit ng pagsasaling ito.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Loading…
Cancel
Save