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

pull/1774/head
localizeflow[bot] 2 weeks ago
parent 563b50d211
commit 0d7e8ebe9d

@ -1,7 +1,7 @@
{
"1-getting-started-lessons/1-intro-to-programming-languages/README.md": {
"original_hash": "bec5e35642176d9e483552bfc82996d8",
"translation_date": "2026-03-06T17:16:43+00:00",
"original_hash": "d5eeb6e975b5864d8da52d4a41941f8d",
"translation_date": "2026-03-27T23:07:04+00:00",
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md",
"language_code": "lt"
},
@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-03-06T17:20:47+00:00",
"translation_date": "2026-03-27T23:10:41+00:00",
"source_file": "AGENTS.md",
"language_code": "lt"
},

@ -2,45 +2,45 @@
## Projekto apžvalga
Tai yra edukacinio kurso saugykla, skirta pradedantiesiems mokyti pagrindų apie žiniatinklio kūrimą. Kursas yra išsamus 12 savaičių kursas, sukurtas Microsoft Cloud Advocates komandos, turintis 24 praktines pamokas, apimančias JavaScript, CSS ir HTML.
Tai mokomasis mokymo planas, skirtas pradedantiesiems mokyti pagrindus apie interneto kūrimą. Šis mokymo planas yra išsamus 12 savaičių kursas, sukurtas Microsoft Cloud Advocates komandos, apimantis 24 praktinius užsiėmimus apie JavaScript, CSS ir HTML.
### Pagrindiniai komponentai
### Pagrindinės dalys
- **Edukacinis turinys**: 24 struktūruotos pamokos, organizuotos į projektinius modulius
- **Praktiniai projektai**: Terariumas, Rašymo žaidimas, Naršyklės plėtinys, Kosminis žaidimas, Banko programa, Kodo redaktorius ir DI pokalbių asistentas
- **Interaktyvūs testai**: 48 testai po 3 klausimus kiekvienas (prieš- ir po pamokos vertinimai)
- **Daugiakalbė palaikymas**: Automatiniai vertimai į 50+ kalbų per GitHub Actions
- **Technologijos**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (DI projektams)
- **Mokomoji medžiaga**: 24 struktūrizuoti užsiėmimai, suskirstyti į projektinius modulius
- **Praktiniai projektai**: Terariumas, Spausdinimo žaidimas, Naršyklės plėtinys, Kosmoso žaidimas, Banko programa, Kodo redaktorius ir AI pokalbių asistentas
- **Interaktyvūs testai**: 48 testai po 3 klausimus kiekviename (prieš ir po pamokos vertinimai)
- **Daugiakalbė palaikymas**: Automatiniai vertimai į daugiau nei 50 kalbų per GitHub Actions
- **Technologijos**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (AI projektams)
### Architektūra
- Edukacinė saugykla su pamokų struktūra
- Kiekvienos pamokos aplanke yra README, kodo pavyzdžiai ir sprendimai
- Atskirti savarankiški projektai atskiruose kataloguose (quiz-app, įvairūs pamokų projektai)
- Vertimų sistema naudojanti GitHub Actions (co-op-translator)
- Dokumentacija teikiama per Docsify ir prieinama PDF formatu
- Mokomasis saugykla su pamokų struktūra
- Kiekviename pamokos kataloge yra README, kodo pavyzdžiai ir sprendimai
- Atskiri savarankiški projektai skirtinguose kataloguose (quiz-app, įvairūs pamokų projektai)
- Vertimų sistema, naudojanti GitHub Actions (co-op-translator)
- Dokumentacija teikiama per Docsify ir prieinama PDF formatu
## Nustatymo komandos
## Sąrankos komandos
Ši saugykla skirta daugiausia edukaciniam turiniui vartoti. Norint dirbti su specifiniais projektais:
Ši saugykla pirmiausia skirta mokomosios medžiagos naudojimui. Darbas su konkrečiais projektais:
### Pagrindinės saugyklos nustatymas
### Pagrindinė saugyklos sąranka
```bash
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
cd Web-Dev-For-Beginners
```
### Apklaustuko programėlės nustatymas (Vue 3 + Vite)
### Quiz App sąranka (Vue 3 + Vite)
```bash
cd quiz-app
npm install
npm run dev # Paleisti kūrimo serverį
npm run build # Sukurti gamybai
npm run lint # Paleisti ESLint
npm run build # Statyti gamybai
npm run lint # Vykdyti ESLint
```
### Banko projekto API (Node.js + Express)
```bash
@ -50,24 +50,24 @@ npm start # Paleisti API serverį
npm run lint # Vykdyti ESLint
npm run format # Formatuoti su Prettier
```
### Naršyklės plėtinių projektai
```bash
cd 5-browser-extension/solution
npm install
# Vadovaukitės naršyklės specifinėmis plėtinių įkėlimo instrukcijomis
# Laikykitės naršyklės specifinių plėtinių įkėlimo instrukcijų
```
### Kosminio žaidimo projektai
### Kosmoso žaidimo projektai
```bash
cd 6-space-game/solution
npm install
# Atidarykite index.html naršyklėje arba naudokite Live Server
```
### Pokalbių projekto (Python backend) nustatymai
### Pokalbių projekto (Python backend) sąranka
```bash
cd 9-chat-project/solution/backend/python
@ -75,208 +75,208 @@ pip install openai
# Nustatykite GITHUB_TOKEN aplinkos kintamąjį
python api.py
```
## Kūrimo darbo eiga
## Vystymo darbo eiga
### Turinio bendradarbiams
### Turinio prisidedantiems
1. **Padarykite forką** saugyklos į savo GitHub paskyrą
2. **Klonuokite savo forką** vietoje
3. **Sukurkite naują šaką** savo pakeitimams
4. Keiskite pamokų turinį arba kodo pavyzdžius
5. Išbandykite kodo pakeitimus atitinkamuose projekto kataloguose
6. Pateikite pull requestus pagal indėlio taisykles
1. **Sukurti atšaką** saugyklos savo GitHub paskyroje
2. **Klonuoti atšaką** lokaliai
3. **Sukurti naują šaką** savo pakeitimams
4. Redaguoti pamokų turinį arba kodo pavyzdžius
5. Išbandyti kodo pakeitimus atitinkamuose projekto kataloguose
6. Pateikti pakeitimų užklausas pagal prisidėjimo gaires
### Besimokantiems
### Mokiniams
1. Padarykite fork arba klonuokite saugyklą
2. Nuosekliai pereikite per pamokų katalogus
3. Skaitykite kiekvienos pamokos README failus
4. Atlikite priešpamokinius testus adresu https://ff-quizzes.netlify.app/web/
5. Dirbkite su kodo pavyzdžiais pamokų aplankuose
6. Atlikite užduotis ir iššūkius
7. Atlikite postpamokinius testus
1. Atšaka arba klonas saugyklos
2. Sekti pamokų katalogus eilės tvarka
3. Skaityti kiekvieno užsiėmimo README failus
4. Atlikti testus prieš pamoką adresu https://ff-quizzes.netlify.app/web/
5. Dirbti su kodo pavyzdžiais pamokų kataloguose
6. Atlikti užduotis ir iššūkius
7. Atlikti testus po pamokos
### Gyvas vystymas
### Tiesioginis kūrimas
- **Dokumentacija**: Paleiskite `docsify serve` šakniniame aplanke (3000 prievadas)
- **Apklaustuko programėlė**: Paleiskite `npm run dev` quiz-app kataloge
- **Projektai**: Naudokite VS Code Live Server plėtinį HTML projektams
- **API projektai**: Paleiskite `npm start` atitinkuose API kataloguose
- **Dokumentacija**: paleisti `docsify serve` šakniniame kataloge (prievadas 3000)
- **Quiz App**: paleisti `npm run dev` quiz-app kataloge
- **Projektai**: naudoti VS Code Live Server plėtinį HTML projektams
- **API projektai**: paleisti `npm start` atitinkamuose API kataloguose
## Testavimo instrukcijos
### Apklaustuko programėlės testavimas
### Quiz App testavimas
```bash
cd quiz-app
npm run lint # Patikrinkite kodo stiliaus klaidas
npm run build # Patikrinkite, ar statyba sėkminga
npm run lint # Patikrinkite kodo stiliaus problemas
npm run build # Patvirtinkite, kad kūrimas sėkmingas
```
### Banko API testavimas
```bash
cd 7-bank-project/api
npm run lint # Patikrinkite kodo stiliaus klaidas
node server.js # Patikrinkite, ar serveris paleidžiamas be klaidų
npm run lint # Patikrinti kodo stiliaus problemas
node server.js # Patvirtinti, kad serveris startuoja be klaidų
```
### Bendras testavimo požiūris
- Tai edukacinė saugykla be išsamios automatizuotos testavimo sistemos
- Rankinis testavimas apima:
- Kodo pavyzdžiai veikia be klaidų
- Dokumentacijos nuorodos veikia tinkamai
- Projektų kompiliacijos vyksta sėkmingai
- Pavyzdžiai atitinka gerąsias praktikas
- Tai mokomasis saugykla be išsamių automatinių testų
- Rankinis testavimas daugiausia sutelktas į:
- Kodo pavyzdžiai veikia be klaidų
- Dokumentacijos nuorodos veikia tinkamai
- Projektų kūrimas sėkmingas
- Pavyzdžiai atitinka gerąsias praktikas
### Patikrinimai prieš pateikiant
### Prieš pateikiant patikrinimai
- Paleiskite `npm run lint` kataloguose su package.json
- Patikrinkite markdown nuorodų galiojimą
- Išbandykite kodo pavyzdžius naršyklėje arba Node.js
- Įsitikinkite, kad vertimai išlaiko tinkamą struktūrą
- Paleisti `npm run lint` kataloguose su package.json
- Patikrinti, ar markdown nuorodos galioja
- Išbandyti kodo pavyzdžius naršyklėje arba Node.js
- Patvirtinti, kad vertimai išlaiko tinkamą struktūrą
## Kodo stiliaus gairės
### JavaScript
- Naudokite modernią ES6+ sintaksę
- Laikykitės standartinių ESLint konfigūracijų projektuose
- Naudokite prasmingus kintamųjų ir funkcijų pavadinimus mokymosi tikslams
- Pridėkite komentarus, paaiškinančius koncepcijas mokiniams
- Formatuokite naudodami Prettier, kur nustatyta
- Naudoti modernią ES6+ sintaksę
- Laikytis standartinių ESLint konfigūracijų projektuose
- Naudoti prasmingus kintamųjų ir funkcijų pavadinimus mokymuisi
- Pridėti komentarus, paaiškinančius sąvokas mokiniams
- Formatuoti naudojant Prettier, kur tai konfigūruota
### HTML/CSS
- Semantiški HTML5 elementai
- Responvyvaus dizaino principai
- Aiškios klasės pavadinimų konvencijos
- Komentarai, paaiškinantys CSS technikas mokiniams
- Semantiški HTML5 elementai
- Reaguojantis dizainas
- Aiškios klasių pavadinimų konvencijos
- Komentarai, paaiškinantys CSS metodikas mokiniams
### Python
- PEP 8 stiliaus gairės
- Aiškūs, edukaciniai kodo pavyzdžiai
- Tipų anotacijos, jei naudingos mokymuisi
- PEP 8 stiliaus gairės
- Aiškūs, mokomieji kodo pavyzdžiai
- Rekomenduojami tipų užuominomis, kur naudingas mokymuisi
### Markdown dokumentacija
- Aiški antraščių hierarchija
- Kodo blokai su kalbos nurodymu
- Nuorodos į papildomus išteklius
- Ekrano nuotraukos ir paveikslėliai `images/` kataloguose
- Alt tekstas paveikslėliams prieinamumui užtikrinti
- Aiški antraščių hierarchija
- Kodo blokai su kalbos nurodymu
- Nuorodos į papildomus išteklius
- Ekrano nuotraukos ir vaizdai `images/` kataloguose
- Alternatyvus tekstas vaizdams prieinamumui
### Failų organizacija
### Failų organizavimas
- Pamokos numeruojamos nuosekliai (1-getting-started-lessons, 2-js-basics ir kt.)
- Kiekviename projekte yra `solution/` ir dažnai `start/` arba `your-work/` katalogai
- Paveikslėliai saugomi pamokų specifiniuose `images/` aplankuose
- Vertimai saugomi `translations/{language-code}/` struktūroje
- Pamokos numeruotos seka (1-getting-started-lessons, 2-js-basics ir t.t.)
- Kiekviename projekte yra `solution/` ir dažnai `start/` arba `your-work/` katalogai
- Vaizdai saugomi konkrečių pamokų `images/` aplankuose
- Vertimai `translations/{language-code}/` struktūroje
## Kūrimas ir diegimas
### Apklaustuko programėlės diegimas (Azure Static Web Apps)
### Quiz App diegimas (Azure Static Web Apps)
quiz-app yra sukonfigūruotas Azure Static Web Apps diegimui:
quiz-app konfigūruotas Azure Static Web Apps diegimui:
```bash
cd quiz-app
npm run build # Sukuria dist/ aplanką
# Diegia per GitHub Actions darbo eigą, kai pushinama į main šaką
# Diegia per GitHub Actions darbo eigą į pagrindinę šaką paspaudus
```
Azure Static Web Apps konfigūracija:
- **Programos vieta**: `/quiz-app`
- **Išvesties vieta**: `dist`
- **Darbo eiga**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
Azure Static Web Apps konfigūracija:
- **Programėlės vieta**: `/quiz-app`
- **Išvesties vieta**: `dist`
- **Vykdymo eiga**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Dokumentacijos PDF kūrimas
### Dokumentacijos PDF generavimas
```bash
npm install # Įdiekite docsify-to-pdf
npm run convert # Sugeneruokite PDF iš docs
npm run convert # Sugeneruokite PDF iš dokumentų
```
### Docsify dokumentacija
```bash
npm install -g docsify-cli # Įdiegti Docsify globaliai
docsify serve # Tarnauti localhost:3000
npm install -g docsify-cli # Įdiekite Docsify globaliai
docsify serve # Aptarnauti localhost:3000
```
### Projektų specifiniai kūrimo procesai
### Projektui būdingi kūrimo procesai
Kiekvienas projekto katalogas gali turėti savo kūrimo procesą:
- Vue projektai: `npm run build` sukuria produkcinius paketus
- Statiniai projektai: be kūrimo žingsnio, failai pateikiami tiesiogiai
Kiekvienas projekto katalogas gali turėti savą kūrimo procesą:
- Vue projektai: `npm run build` sukuria produkcinius paketus
- Statiniai projektai: Nereikia kūrimo žingsnio, failai tiekiami tiesiogiai
## Pull request gairės
## Pull Request gairės
### Pavadinimo formatas
Naudokite aiškius, apibūdinančius pakeitimus pavadinimus:
- `[Quiz-app] Pridėti naują testą pamokai X`
- `[Lesson-3] Ištaisyta rašybos klaida terrarium projekte`
- `[Translation] Pridėtas ispanų kalbos vertimas pamokai 5`
- `[Docs] Atnaujintos nustatymo instrukcijos`
Naudoti aiškius, apibūdinančius pavadinimus, nurodančius pakeitimo sritį:
- `[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`
### Būtini patikrinimai
### Reikalingi patikrinimai
Prieš pateikiant PR:
Prieš pateikiant PR:
1. **Kodo kokybė**:
- Paleiskite `npm run lint` atitinkamuose projekto kataloguose
- Ištaisyti visus lint klaidas ir įspėjimus
1. **Kodo kokybė**:
- Paleisti `npm run lint` paveiktuose projekto kataloguose
- Ištaisyti visas lint klaidas ir įspėjimus
2. **Kūrimo patikrinimas**:
- Jei taikoma, paleiskite `npm run build`
- Užtikrinkite, kad nėra kūrimo klaidų
2. **Kūrimo patikra**:
- Jeigu taikoma, paleisti `npm run build`
- Užtikrinti, kad nebūtų kūrimo klaidų
3. **Nuorodų patikra**:
- Patikrinkite visas markdown nuorodas
- Patikrinkite paveikslėlių nuorodas
3. **Nuorodų tikrinimas**:
- Išbandyti visas markdown nuorodas
- Patikrinti, ar vaizdų nuorodos veikia
4. **Turinio peržiūra**:
- Korektūra dėl rašybos ir gramatikos
- Užtikrinkite, kad kodo pavyzdžiai yra teisingi ir edukaciniai
- Patikrinkite, kad vertimai išlaiko originalią prasmę
4. **Turinio peržiūra**:
- Taisyti rašybos ir gramatikos klaidas
- Užtikrinti, kad kodo pavyzdžiai būtų teisingi ir mokomieji
- Patikrinti, kad vertimai atitinka originalią prasmę
### Indėlio reikalavimai
### Prisidėjimo reikalavimai
- Sutikite su Microsoft CLA (automatinis patikrinimas pirmojo PR metu)
- Laikykitės [Microsoft atvirojo kodo elgesio taisyklių](https://opensource.microsoft.com/codeofconduct/)
- Matykite [CONTRIBUTING.md](./CONTRIBUTING.md) išsamioms gairėms
- Jei taikoma, nurodykite problemų numerius PR apraše
- Sutikti su Microsoft CLA (automatinis patikrinimas pirmo PR metu)
- Laikytis [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- Perskaityti [CONTRIBUTING.md](./CONTRIBUTING.md) išsamioms gairėms
- Nurodyti atitinkamus problemų numerius PR aprašyme, jei taikoma
### Peržiūros procesas
- PR peržiūri prižiūrėtojai ir bendruomenė
- Prioritetas suteikiamas edukaciniam aiškumui
- Kodo pavyzdžiai turi atitikti šiuolaikines gerąsias praktikas
- Vertimai peržiūrimi dėl tikslumo ir kultūrinio tinkamumo
- PR peržiūri prižiūrėtojai ir bendruomenė
- Prioritetas skiriamas mokymosi aiškumui
- Kodo pavyzdžiai turi atitikti dabartines gerąsias praktikas
- Vertimai tikrinami dėl tikslumo ir kultūrinio atitikimo
## Vertimų sistema
### Automatizuotas vertimas
### Automatizuoti vertimai
- Naudoja GitHub Actions su co-op-translator workflow
- Automatiškai verčia į daugiau nei 50 kalbų
- Šaltinių failai pagrindiniuose kataloguose
- Išverstieji failai saugomi `translations/{language-code}/` kataloguose
- Naudoja GitHub Actions su co-op-translator darbo eiga
- Automatiškai verčia į daugiau nei 50 kalbų
- Šaltinių failai pagrindiniuose kataloguose
- Išversti failai `translations/{language-code}/` kataloguose
### Rankinių vertimo patobulinimų pridėjimas
### Rankinių vertimų patobulinimų pridėjimas
1. Raskite failą `translations/{language-code}/` kataloge
2. Atlikite patobulinimus išlaikydami struktūrą
3. Užtikrinkite, kad kodo pavyzdžiai lieka veikiantys
4. Išbandykite lokalizuotą testų turinį
1. Rasti failą `translations/{language-code}/` kataloge
2. Atlikti pataisas, išlaikant struktūrą
3. Užtikrinti, kad kodo pavyzdžiai veiktų
4. Išbandyti lokalizuotą testų turinį
### Vertimų meta duomenys
### Vertimų metaduomenys
Išverstieji failai turi meta antraštę:
Išversti failai turi metaduomenų antraštę:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -288,121 +288,121 @@ CO_OP_TRANSLATOR_METADATA:
}
-->
```
## Derinimas ir trikčių šalinimas
### Dažnos problemos
**Apklaustuko programėlė nepaleidžiama**:
- Patikrinkite Node.js versiją (rekomenduojama v14+)
- Ištrinkite `node_modules` ir `package-lock.json`, tada paleiskite `npm install` iš naujo
- Patikrinkite, ar nėra prievado konfliktų (numatytasis: Vite naudoja prievadą 5173)
**Quiz app nepaleidžiamas**:
- Patikrinti Node.js versiją (rekomenduojama v14+)
- Ištrinti `node_modules` ir `package-lock.json`, paleisti `npm install` iš naujo
- Patikrinti prievadų konfliktus (numatyta: Vite naudoja 5173 prievadą)
**API serveris nepaleidžiamas**:
- Įsitikinkite, kad Node.js versija atitinka minimalų reikalavimą (node >=10)
- Patikrinkite, ar prievadas nėra užimtas
- Užtikrinkite, kad visos priklausomybės įdiegtos per `npm install`
**API serveris nepaleidžiamas**:
- Patvirtinti, kad Node.js versija atitinka reikalavimus (node >=10)
- Patikrinti, ar prievadas nėra užimtas
- Įsitikinti, kad visos priklausomybės įdiegtos su `npm install`
**Naršyklės plėtinys nesikrauna**:
- Patikrinkite, ar manifest.json yra tinkamai suformatuotas
- Patikrinkite naršyklės konsolę dėl klaidų
- Sekite naršyklės specifines plėtinių diegimo instrukcijas
**Naršyklės plėtinys nesikrauna**:
- Patikrinti, ar manifest.json formatas teisingas
- Peržiūrėti naršyklės konsolę klaidų
- Vadovautis naršyklės plėtinio diegimo instrukcijomis
**Python pokalbių projekto problemos**:
- Įsitikinkite, kad įdiegta OpenAI paketas: `pip install openai`
- Patikrinkite, ar nustatytas GITHUB_TOKEN aplinkos kintamasis
- Patikrinkite prieigą prie GitHub modelių
**Python pokalbių projekto problemos**:
- Įsitikinti, kad įdiegta OpenAI biblioteka: `pip install openai`
- Patikrinti, ar nustatytas GITHUB_TOKEN aplinkos variable
- Patikrinti GitHub Models prieigos leidimus
**Docsify neišveda dokumentacijos**:
- Įdiekite docsify-cli globaliai: `npm install -g docsify-cli`
- Paleiskite iš saugyklos šaknies katalogo
- Patikrinkite, ar egzistuoja `docs/_sidebar.md`
**Docsify nedemonstruoja dokumentų**:
- Įdiegti docsify-cli globaliai: `npm install -g docsify-cli`
- Paleisti iš saugyklos šaknies
- Patikrinti, ar egzistuoja `docs/_sidebar.md`
### Vystymo aplinkos patarimai
### Kūrimo aplinkos patarimai
- Naudokite VS Code su Live Server plėtiniu HTML projektams
- Įdiekite ESLint ir Prettier plėtinius nuosekliam formatavimui
- Naudokitės naršyklės kūrimo įrankiais JavaScript derinimui
- Vue projektams įdiekite Vue DevTools naršyklės plėtinį
- Naudoti VS Code su Live Server plėtiniu HTML projektams
- Įdiegti ESLint ir Prettier plėtinius nuosekliam formatavimui
- Naudoti naršyklės DevTools JavaScript derinimui
- Vue projektams įdiegti Vue DevTools naršyklės plėtinį
### Veikimo našumas
- Daug išverstų failų (50+ kalbų) reiškia dideles pilnas kopijas
- Naudokite švelnų klonavimą, jei dirbate tik su turiniu: `git clone --depth 1`
- Išskirkite vertimus paieškose dirbdami su anglišku turiniu
- Kūrimo procesai gali būti lėti pirmame paleidime (npm install, Vite build)
- Daug išverstų failų (daugiau nei 50 kalbų) reiškia didelius klonus
- Naudoti sekliu klonavimą, jei dirbama tik su turiniu: `git clone --depth 1`
- Išskirti vertimus paieškose dirbant su anglų kalba
- Kūrimo procesai gali būti lėti pirmo paleidimo metu (npm install, Vite build)
## Saugumo svarstymai
## Saugumo aspektai
### Aplinkos kintamieji
- API raktai neturi būti įtraukti į saugyklą
- Naudokite `.env` failus (jau įtraukti į `.gitignore`)
- Dokumentuokite reikiamus aplinkos kintamuosius projektuose README
- API raktai neturi būti saugomi saugykloje
- Naudoti `.env` failus (jau įtraukta į `.gitignore`)
- Dokumentuoti reikalingus aplinkos kintamuosius README failuose
### Python projektai
- Naudokite virtualias aplinkas: `python -m venv venv`
- Laikykite priklausomybes atnaujintas
- GitHub tokenai turi turėti minimalias reikalingas teises
- Naudoti virtualias aplinkas: `python -m venv venv`
- Laikyti priklausomybes atnaujintas
- GitHub tokenai turi turėti minimalias reikalingas teises
### GitHub modelių prieiga
### GitHub Models prieiga
- Reikalingi asmeniniai prieigos tokenai (PAT) GitHub modeliams
- Tokenai saugomi kaip aplinkos kintamieji
- Niekada neįtraukite tokenų ar prisijungimo duomenų į saugyklą
- Reikalingi asmeniniai prieigos tokenai (PAT) GitHub Models
- Tokenai laikomi aplinkos kintamuosiuose
- Niekuomet neįtraukti tokenų ar prisijungimo duomenų į saugyklą
## Papildomos pastabos
### Tikslinė auditorija
- Visiškai pradedantieji žiniatinklio kūrime
- Studentai ir savarankiški besimokantieji
- Mokytojai, naudojantys kursą klasėse
- Turinys sukurtas prieinamumui ir palaipsniui įgūdžių tobulinimui
- Absoliutūs pradedantieji interneto kūrime
- Studentai ir savarankiški mokymosi dalyviai
- Mokytojai, naudojantys mokymo planą klasėse
- Turinys pritaikytas prieinamumui ir palaipsniui įgūdžių ugdymui
### Edukacinė filosofija
### Mokymosi filosofija
- Mokymasis projekte pagrindu
- Dažni žinių patikrinimai (testai)
- Praktinės kodo užduotys
- Realūs pavyzdžiai ir taikymas
- Akcentas į pagrindus prieš karkasus
- Projektinis mokymasis
- Dažni žinių patikrinimai (testai)
- Praktiniai programavimo užsiėmimai
- Realūs taikymo pavyzdžiai
- Dėmesys pagrindams prieš karkasus
### Saugyklos priežiūra
- Aktyvi besimokančiųjų ir bendradarbių bendruomenė
- Reguliarūs atnaujinimai priklausomybėms ir turiniui
- Problemos ir diskusijos prižiūrimos migratorių
- Vertimų atnaujinimai automatizuoti per GitHub Actions
- Aktyvi mokinių ir prisidedančių bendruomenė
- Reguliarūs priklausomybių ir turinio atnaujinimai
- Problemos ir diskusijos prižiūrimos vykdytojų
- Vertimų atnaujinimai automatizuoti per GitHub Actions
### Susiję ištekliai
- [Microsoft Learn moduliai](https://docs.microsoft.com/learn/)
- [Studentų centras](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) rekomenduojamas besimokantiesiems
- Papildomi kursai: Generatyvioji DI, Duomenų mokslas, ML, IoT kursai
- [Microsoft Learn moduliai](https://docs.microsoft.com/learn/)
- [Studentų centro ištekliai](https://docs.microsoft.com/learn/student-hub/)
- Rekomenduojama naudoti [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) mokymuisi
- Papildomi kursai: generatyvus AI, duomenų mokslas, ML, IoT
### Darbas su specifiniais projektais
### Darbas su konkrečiais projektais
Išsamios instrukcijos apie atskirus projektus yra README failuose:
- `quiz-app/README.md` - Vue 3 apklaustuko programa
- `7-bank-project/README.md` - Banko programa su autentifikacija
- `5-browser-extension/README.md` - Naršyklės plėtinių kūrimas
- `6-space-game/README.md` - Canvas pagrindu sukurtas žaidimas
- `9-chat-project/README.md` - DI pokalbių asistento projektas
Išsamias instrukcijas apie atskirus projektus žr. README failuose:
- `quiz-app/README.md` - Vue 3 viktorinos programa
- `7-bank-project/README.md` - Banko programa su autentifikacija
- `5-browser-extension/README.md` - Naršyklės plėtinių kūrimas
- `6-space-game/README.md` - Canvas pagrindu veikiantis žaidimas
- `9-chat-project/README.md` - AI pokalbių asistento projektas
### Monorepo struktūra
Nors tai nėra tradicinis monorepo, ši saugykla apima kelis nepriklausomus projektus:
- Kiekviena pamoka yra savarankiška
- Projektai nesidalina priklausomybėmis
- Dirbkite su atskiromis projekto dalimis nesukeldami poveikio kitiems
- Klonuokite visą saugyklą pilnam kurso patyrimui
Nors nėra tradicinė monorepo saugykla, ši saugykla talpina kelis nepriklausomus projektus:
- Kiekviena pamoka savaime užbaigta
- Projektai nesidalina priklausomybėmis
- Galima dirbti su atskirais projektais nepaveikiant kitų
- Norint gauti pilną mokymo patirtį, rekomenduojama klonuoti visą saugyklą
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Atsakomybės apribojimas**:
Šis dokumentas buvo išverstas naudojant dirbtinio intelekto vertimo paslaugą [Co-op Translator](https://github.com/Azure/co-op-translator). Nors siekiame tikslumo, atkreipkite dėmesį, kad automatizuotuose vertimuose gali pasitaikyti klaidų ar netikslumų. Originalus dokumentas gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Svarbiai informacijai rekomenduojama naudotis profesionalaus žmogaus vertimu. Mes neprisiimame atsakomybės už bet kokius nesusipratimus ar neteisingas interpretacijas, kylančias dėl šio vertimo naudojimo.
Šis dokumentas buvo išverstas naudojant dirbtinio intelekto vertimo paslaugą [Co-op Translator](https://github.com/Azure/co-op-translator). Nors siekiame tikslumo, atkreipkite dėmesį, kad automatizuoti vertimai gali turėti klaidų arba netikslumų. Originalus dokumentas gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Kritiniais atvejais rekomenduojama naudotis profesionalių žmonių vertimais. Mes neatsakome už bet kokius nesusipratimus ar neteisingas interpretacijas, kylančias iš šio vertimo naudojimo.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,7 +1,7 @@
{
"1-getting-started-lessons/1-intro-to-programming-languages/README.md": {
"original_hash": "bec5e35642176d9e483552bfc82996d8",
"translation_date": "2026-03-06T17:02:28+00:00",
"original_hash": "d5eeb6e975b5864d8da52d4a41941f8d",
"translation_date": "2026-03-27T22:58:54+00:00",
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md",
"language_code": "my"
},
@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-03-06T17:18:23+00:00",
"translation_date": "2026-03-27T23:08:22+00:00",
"source_file": "AGENTS.md",
"language_code": "my"
},

@ -2,27 +2,27 @@
## Project Overview
အရာသည် ဝက်ဘ်ဖွံ့ဖြိုးတိုးတက်မှု အခြေခံများကို စတင္ရင်းနှီးသူများကို သင်ကြားပေးရန် ရည်ရွယ်ထားသော ပညာရေးသင်ရိုးအစီအစဉ်၏ ဂိုဒေါင်ဖြစ်သည်။ သင်ရိုးအစီအစဉ်သည် Microsoft Cloud Advocates များမှ ဖန်တီးထားသော ၁၂ အပတ် ကြာသည့် အဝန်းလည်းပြည့်သည့် သင်ခန်းစာများပါဝင်ပြီး JavaScript၊ CSS နှင့် HTML ကို လက်တွေ့ လေ့ကျင့်ခန်း ၂၄ ခုအပါအဝင်ဖြစ်သည်။
ဤသည်မှာ အခြေခံအဆင့် ဝက်ဘ် ဖွံ့ဖြိုးတိုးတက်မှုကို သင်ကြားရန် အတွက် ပညာရေး သင်ရိုးညွှန်းတမ်း သိမ်းဆည်းရာ ရှိသော repository ဖြစ်သည်။ သင်ရိုးညွှန်းတမ်းတွင် Microsoft Cloud Advocates မှ တီထွင်ထားသော ၁၂ ပတ်ကြာ သင်တန်းလုံလောက်ပြီး JavaScript, CSS နှင့် HTML ကို အကျဉ်းချုပ် ပါဝင်တဲ့ လက်တွေ့သင်ခန်းစာ ၂၄ ခု ပါဝင်သည်။
### Key Components
- **ပညာရေး အကြောင်းအရာ**: စီမံကိန်းအခြေခံ မော်ဂျူးများ အတွင်း ဖွဲ့စည်းထားသော ၂၄ ခု သင်ခန်းစာ
- **လက်တွေ့ စီမံကိန်းများ**: Terrarium, Typing Game, Browser Extension, Space Game, Banking App, Code Editor, နှင့် AI Chat Assistant
- **အပြန်အလှန် စစ်ဆေးမေးခွန်းများ**: မေးခွန်း ၃ ခုနှင့် ၄၈ ခု (သင်ခန်းစာမတိုင်မှီ/ပြီးနောက်သုံးသပ်မှုများ)
- **ဘာသာစကား များစွာ ပံ့ပိုးမှု**: GitHub Actions မှတစ်ဆင့် ၅၀ ကျော်ဘာသာစကား အလိုအလျောက် ဘာသာပြန်ခြင်
- **နည်းပညာများ**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (AI စီမံကိန်းများအတွက်)
- **ပညာရေး အကြောင်းအရာ**: ၂၄ ခုသော ဖွဲ့စည်းထားသော သင်ခန်းစာများကို ပရောဂျက်အခြေပြု ပုံစံဖြင့် စီစဉ်ထားသည်
- **လက်တွေ့ ပရောဂျက်များ**: Terrarium၊ Typing Game၊ Browser Extension၊ Space Game၊ Banking App၊ Code Editor နှင့် AI Chat Assistant
- **အပြန်အလှန် စစ်တမ်းများ**: သင်ခန်းစာနှင့် မတိုင်မှီ/နောက်ပိုင်း စစ်တမ်း ၄၈ ခု၊ မေးခွန်းသုံးခုစီပါဝင်သည်
- **ဘာသာစကား များစွာ ထောက်ခံမှု**: GitHub Actions ဖြင့် ၅၀ ကျော်သော ဘာသာစကားများအတွက် အလိုအလျောက် ဘာသာပြန်မှုမျာ
- **နည်းပညာများ**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (AI ပရောဂျက်များအတွက်)
### Architecture
- သင်ခန်းစာအခြေခံ ပညာရေးဂိုဒေါင်
- သင်ခန်းစာတိုင်းတွင် README၊ ကုဒ်ဥပမာများနှင့် ဖြေရှင်းနည်းများပါဝင
- ကွဲပြားသော ဒိုင်ရေးတရီများတွင် သီးခြား စီမံကိန်းများ (quiz-app, သင်ခန်းစာစီမံကိန်းစွန့်)
- GitHub Actions (co-op-translator) ကို အသုံးပြုသည့် ဘာသာပြန်စနစ်
- Docsify မှတဆင့် စာတမ်းများ ပေးပို့ပြီး PDF အဖြစ်ရနိုင်ခြင်း
- သင်ခန်းစာအခြေပြု ပညာရေး repository
- သင်ခန်းစာ folder တစ်ခုစီတွင် README, code ဥပမာများနှင့် ဖြေရှင်းချက်များ ပါဝင်သည
- quiz-app နှင့် အခြား သီးခြားပရောဂျက်များအတွက် အလွတ် directory များ
- GitHub Actions အသုံးပြုပြီး ဘာသာပြန် မော်ဒယ်စနစ် (co-op-translator)
- Docsify အသုံးပြု၍ စာတမ်းရေးဆွဲမှု ပြုလုပ်ပြီး PDF အဖြစ် ရနိုင်သည်
## Setup Commands
ဂိုဒေါင်ကို အဓိကအားဖြင့် ပညာရေးအကြောင်းအရာ အသုံးပြုမှုနှင့် ရည်ရွယ်သည်။ သီးခြား စီမံကိန်းများတွင် အလုပ်လုပ်ရန်:
repository သည် ပညာရေး အကြောင်းအရာ စမ်းသုံးခြင်း အထူးပြုထားသည်။ အထူးပရောဂျက်များနှင့် ဆောင်ရွက်ရန်အတွက် -
### Main Repository Setup
@ -36,9 +36,9 @@ cd Web-Dev-For-Beginners
```bash
cd quiz-app
npm install
npm run dev # ဖွံ့ဖြိုးမှုဆာဗာကို စတင်ပါ
npm run build # ထုတ်လုပ်မှုအတွက် တည်ဆောက်ပါ
npm run lint # ESLint ကို chạyပါ
npm run dev # ဖွံ့ဖြိုးမှုဆာဗာစတင်ပါ
npm run build # ထုတ်လုပ်မှုအတွက် ဆောက်လုပ်ပါ
npm run lint # ESLint ကို chạy ပါ
```
### Bank Project API (Node.js + Express)
@ -48,7 +48,7 @@ cd 7-bank-project/api
npm install
npm start # API ဆာဗာကို စတင်ပါ
npm run lint # ESLint ကို လုပ်ဆောင်ပါ
npm run format # Prettier ဖြင့် ဖော်မတ်လုပ်ပါ
npm run format # Prettier ဖြင့် ဖော်မက် ပြုလုပ်ပါ
```
### Browser Extension Projects
@ -56,7 +56,7 @@ npm run format # Prettier ဖြင့် ဖော်မတ်လုပ်
```bash
cd 5-browser-extension/solution
npm install
# ဘရောက်ဇာအထူးတိကျသော extension ပေါင်းထည့်နည်းလမ်းညွှန်များကိုလိုက်နာပါ
# ဘရောက်ဇာအလိုက် ထပ်ဆောင်းပုံတင်ခြင်း လမ်းညွှန်ချက်များကိုလိုက်နာပါ
```
### Space Game Projects
@ -64,7 +64,7 @@ npm install
```bash
cd 6-space-game/solution
npm install
# index.html ကို browser တွင်ဖွင့်ပါ သို့မဟုတ် Live Server ကို အသုံးပြုပါ
# index.html ကို browser မှာ ဖွင့်ပါ သို့မဟုတ် Live Server ကို အသုံးပြုပါ
```
### Chat Project (Python Backend)
@ -72,7 +72,7 @@ npm install
```bash
cd 9-chat-project/solution/backend/python
pip install openai
# GITHUB_TOKEN ပတ်ဝန်းကျင်အပြောင်းအလဲအစားထိုးပြုလုပ်ရန်
# GITHUB_TOKEN ပတ်ဝန်းကျင် သတ်မှတ်ချက်ကို သတ်မှတ်ပါ
python api.py
```
@ -80,29 +80,29 @@ python api.py
### For Content Contributors
1. သင့် GitHub အကောင့်သို့ လှည်းရိုက်ပါ
2. သင့်လှည်းကို ဒေသခံတွင် ကွန်ပျူတာသို့ကလုဏ်းလုပ်ပါ
3. မိမိပြင်ဆင်မည့်အတွက် ဘရင့်အသစ်တစ်ခု ဖန်တီးပါ
4. သင်ခန်းစာအကြောင်းအရာ သို့မဟုတ် ကုဒ်ဥပမာများ ပြုပြင်ပါ
5. သင့်အပြောင်းအလဲများကို သက်ဆိုင်ရာ စီမံကိန်း ဒိုင်ရေးတရီများတွင် စမ်းသပ်ပါ
6. ထောက်ပံ့မှုလမ်းညွှန်များကို လိုက်နာ၍ Pull Request တင်ပါ
1. သင်၏ GitHub မှာ repository ကို **fork** ပြုလုပ်ပါ
2. သင်၏ fork ကို လုပ်ဆောင်ရန် **clone** လုပ်ပါ
3. ပြင်ဆင်မှုများအတွက် **branch အသစ်** ဖန်တီးပါ
4. သင်ခန်းစာ အကြောင်းအရာ သို့မဟုတ် code ဥပမာများ ဆက်လက်ပြင်ဆင်ပါ
5. သက်ဆိုင်ရာ ပရောဂျက် directory များတွင် code ပြင်ဆင်မှုများ စမ်းသပ်ပါ
6. အညွှန်းလိုက်၍ pull request များတင်ပါ
### For Learners
1. ဂိုဒေါင်ကို လှည်းရိုက်သို့မဟုတ် ကလုဏ်းလုပ်ပါ
2. သင်ခန်းစာ ဒိုင်ရေးတရီများအား တစိတ်တပိုင်း နဲ့သွားပါ
3. သင်ခန်းစာတိုင်း၏ README ဖိုင်များ ဖတ်ပါ
4. https://ff-quizzes.netlify.app/web/ တွင် သင်ခန်းစာမတိုင်မှီ စစ်ဆေးမေးခွန်းများ ဖြေဆိုပါ
5. သင်ခန်းစာဒိုင်ရေးတရီများတွင် ကုဒ်ဥပမာများ အလုပ်လုပ်ပါ
6. အပ်စာများနှင့် စိန်ခေါ်မှုများ ပြီးစီးပါ
7. သင်ခန်းစာပြီးနောက် စစ်ဆေးမေးခွန်းများ ဖြေဆိုပါ
1. Repository ကို fork သို့မဟုတ် clone လုပ်ပါ
2. သင်ခန်းစာ directory များကို အဆင့်လိုက် သွားပါ
3. တစ်ခုစီသင်ခန်းစာ README ဖတ်ပါ
4. https://ff-quizzes.netlify.app/web/ တွင် သင်ခန်းစာ မတိုင်မှီ စစ်တမ်းများ ဖြေဆိုပါ
5. သင်ခန်းစာ folder တွင် code ဥပမာများ လေ့လာပါ
6. အလုပ်အပ်နှင့် စိန်ခေါ်မှုများ ပြီးမြောက်ပါ
7. သင်ခန်းစာ ပြီးနောက် စစ်တမ်းများ ဖြေဆိုပါ
### Live Development
- **စာတမ်းများ**: root မှ `docsify serve` အမိန့် ဖွင့်ပါ (port 3000)
- **Quiz App**: quiz-app ဒိုင်ရေးတရီတွင် `npm run dev` ဖြင့် သက်ဝင်အောင်လုပ်ပါ
- **စီမံကိန်းများ**: HTML စီမံကိန်းများအတွက် VS Code Live Server extension အသုံးပြုပါ
- **API စီမံကိန်းများ**: သက်ဆိုင်ရာ API ဒိုင်ရေးတရီတွင် `npm start` ပြုလုပ်ပါ
- **စာတမ်းရေးဆွဲခြင်း**: root တွင် `docsify serve` လုပ်ပါ (port 3000)
- **Quiz App**: quiz-app directory တွင် `npm run dev` ပြုလုပ်ပါ
- **ပရောဂျက်များ**: HTML ပရောဂျက်များအတွက် VS Code Live Server extension အသုံးပြုပါ
- **API ပရောဂျက်များ**: သက်ဆိုင်ရာ API directory တွင် `npm start` ပြုလုပ်ပါ
## Testing Instructions
@ -110,85 +110,85 @@ python api.py
```bash
cd quiz-app
npm run lint # ကုဒ်ပုံစံပြဿနာများကိုစစ်ဆေးပါ
npm run build # ဆောက်လုပ်မှုအောင်မြင်မှုကိုအတည်ပြုပါ
npm run lint # သို့သော် အညွှန်းစတိုင်ပြဿနာများကို စစ်ဆေးပါ
npm run build # ဆောက်လုပ်မှုအောင်မြင်သည်ကို အတည်ပြုပါ
```
### Bank API Testing
```bash
cd 7-bank-project/api
npm run lint # ကုဒ်ပုံစံပြဿနာများကိုစစ်ဆေးပါ
node server.js # ပြတ်မှုများမရှိဘဲ ဆာဗာစတင်မှုကိုအတည်ပြုပါ
npm run lint # ကုဒ်ပုံစံပြဿနာများကို စစ်ဆေးပါ
node server.js # အမှား မရှိဘဲ ဆာဗာ ချိန်ဆက်စတင်မှုကို အတည်ပြုပါ
```
### General Testing Approach
- ဤသည်မှာ စုံလုံသော အလိုအလျောက် စမ်းသပ်မှုများ မပါဝင်သည့် ပညာရေးဂိုဒေါင်ဖြစ်သည်
- လက်တွေ့စမ်းသပ်မှုတွင် အာရုံစိုက်ရန်
- ကုဒ်ဥပမာများ အမှားမရှိပြေးနိုင်ခြင်း
- စာတမ်း တွင် လင့်ခ်များ သင့်တော်စွာ လည်ပတ်ခြင်း
- စီမံကိန်း အောင်မြင်စွာ တည်ဆောက်ခြင်း
- ဥပမာများသည် အကောင်းဆုံး လေ့လာသင်ယူနည်းများကို လိုက်နာခြင်း
- ဤသည်မှာ တိကျသော အလိုအလျောက် စမ်းသပ်မှု မပါဝင်သော ပညာရေး repository ဖြစ်သည်
- လက်တို စမ်းသပ်မှုတွင် အောက်ပါအချက်များ အဓိကထားသည် -
- Code ဥပမာများ အမှား မရှိစွာ လည်ပတ်ခြင်း
- စာတမ်းရေးဆွဲမှု လင့်ခ်များ တိကျမှန်ကန်စွာ ဆက်သွယ်နိုင်ခြင်း
- ပရောဂျက် တည်ဆောက်မှု အောင်မြင်စွာ ပြီးစီးခြင်း
- ဥပမာများသည် အကောင်းဆုံးကွင်းဆက်နှင့် ကိုက်ညီမှု
### Pre-submission Checks
- package.json ပါဝင်သည့် ဒိုင်ရေးတရီများတွင် `npm run lint` အလုပ်လုပ်ပါ
- markdown link များ သေချာစွာ စစ်ဆေးပါ
- ကုဒ်ဥပမာများအား browser သို့မဟုတ် Node.js တွင် စမ်းသပ်ပါ
- ဘာသာပြန်မှုသိမ်းထားမှု တိကျမှန်ကန်ကြောင်း စစ်ဆေးပါ
- package.json ပါရှိသည့် directory များတွင် `npm run lint` လုပ်ပါ
- markdown လင့်ခ်များမှန်ကန်မှု စစ်ဆေးပါ
- Browser သို့မဟုတ် Node.js တွင် code ဥပမာများ စမ်းသပ်ပါ
- ဘာသာပြန်မှုများ၏ ဖွဲ့စည်းမှု တိကျမှန်ကန်မှုစစ်ဆေးပါ
## Code Style Guidelines
### JavaScript
- ယနေ့ခေတ် ES6+ စတိုင်များ အသုံးပြုပါ
- စီမံကိန်းများတွင် ပေးထားသော အခြေခံ ESLint ဖိုင်များကို လိုက်နာပါ
- ပညာရေးအတွက် မျက်မှောက်နားလည်မှုလွယ်ကူရန် သေချာသည့် အမျိုးအမည်များ အသုံးပြုပါ
- သင်ယူလိုသူများအတွက် အကြောင်းပြုချက်များ ထည့်သွင်းရေးသားပါ
- Prettier ဖြင့် ပုံစံချိန်ညှိထားသောနေရာများတွင် အသုံးပြုပါ
- လက်ရှိ ES6+ စတိုင်သုံးရန်
- များသော project များတွင် ESLint configuration ကိုလိုက်နာရန်
- ပညာရေးအတွက် သင်အား လွယ်ကူစေရန် အဓိပ္ပါယ်ရှိ variable နဲ့ function နာမည်များသုံးရန်
- သင်ကြားမှုအတွက် ကြားဖြတ်ချက်များ ထည့်ရန်
- Prettier ဖြင့် format ပြုလုပ်မှု (configuration ရှိသည့်နေရာတွင်)
### HTML/CSS
- Semantic HTML5 အကြောင်းအရာအသုံးပြုပါ
- ရွေ့လျားတုံ့ပြန်မှု ဒီဇိုင်း ကို ထည့်သွင်းပါ
- ကလပ်အမည် များ ဖေါ်ပြပုံကွက်ကျစွာရေးသားပါ
- CSS နည်းပညာများကို သင်ယူသူများအတွက် ရှင်းလင်းဖေါ်ပြမှု များ ထည့်ပါ
- Semantic HTML5 elements အသုံးပြုရန်
- Responsive ဒီဇိုင်း အခြေခံချက်များ
- သန့်ရှင်းပြီး ရှင်းလင်းသော class နာမည်များ
- သင်သားများ အတွက် CSS နည်းပညာ ရှင်းလင်းပြောကြားမှုများ
### Python
- PEP 8 စတိုင် လမ်းညွှန်များ လိုက်နာပါ
- ပညာရေးအတွက် သေချာရှင်းလင်းသော ကုဒ်ဥပမာများ
- သင်ယူမှုအတွက် အထောက်အကူဖြစ်စေရန် Type hints အသုံးပြုပါ
- PEP 8 စတိုင်လ်လမ်းညွှန်များ
- သင်ထောက်အကူဖြစ်သော ကျယ်ပြန့်သော code ဥပမာများ
- အသုံးပြုသူအတွက် အကူအညီဖြစ်မည့် Type hints ထည့်သုံးရန်
### Markdown Documentation
- ခေါင်းစဉ်များ ဖော်ပြမှု တိကျရှင်းလင်းမှု
- ဘာသာပြန်ဖြစ်သည့် ကုဒ်ဘလော့များနှင့် ဘာသာဖော်ပြမှု
- အပိုဆောင်း ရင်းမြစ်များအား လင့်ခ်များပါဝင်သည်
- `images/` ဒိုင်ရေးတရီပြည့်စုံအပါအဝင် ပုံများနှင့် ရုပ်ပုံများ
- အားလုံးလက်လှမ်းမီစေရန် ဗဟိုသတ်မှတ် Alt texts များ
- ရှင်းရှင်းလင်းလင်း ခေါင်းစဉ်အဆင့်ခွဲခြားမှု
- ဘာသာပြန်သည့် language နဲ့ code-block များ
- အပိုဆောင်းအရင်းအမြစ် သွားရောက်ရန် link များ
- `images/` folder များရှိ screenshot နှင့် ပုံများ
- ပုံများအတွက် accessibility အတွက် Alt text ထည့်ရန်
### File Organization
- သင်ခန်းစာများကို တန်းတူ နေရာချထားမှု (1-getting-started-lessons, 2-js-basics, စသည်)
- စီမံကိန်းတိုင်းတွင် `solution/` နှင့် မကြာခဏ `start/` သို့မဟုတ် `your-work/` ဒိုင်ရေးတရီများရှိသည်
- သင်ခန်းစာအလိုက် `images/` ဖိုလ်ဒါထဲတွင် ပုံများ သိုလှောင်ထားခြင်း
- ဘာသာပြန်များကို `translations/{language-code}/` ဖိုလ်ဒါတွင် သိမ်းဆည်းထားခြင်း
- သင်ခန်းစာများကို နံပါတ်စဉ်လိုက် ဖြစ်ရန် (1-getting-started-lessons, 2-js-basics စသဖြင့်)
- project အသီးသီးတွင် `solution/` နှင့် မကြာခဏ `start/` သို့မဟုတ် `your-work/` directory များရှိသည်
- ပုံများကို သင်ခန်းစာအလိုက်သိုလှောင်ထားသော `images/` folder တွင်ရှိသည်
- ဘာသာပြန်ဖိုင်များကို `translations/{language-code}/` structure ဖြင့်ထားသည်
## Build and Deployment
### Quiz App Deployment (Azure Static Web Apps)
quiz-app သည် Azure Static Web Apps များတွင် တည်ဆောက်ရန် စံချိန်တင်ထားသည်-
quiz-app ကို Azure Static Web Apps deployment အတွက် တပ်ဆင်ထားသည် -
```bash
cd quiz-app
npm run build # dist/ ဖိုလဒါကို ဖန်တီးသည်
# main တွင် push လုပ်သည့်အခါ GitHub Actions workflow ဖြင့် Deploy လုပ်သည်
npm run build # dist/ ဖိုလဒါကို ဖန်တီးသည်
# main သို့ push လုပ်သောအခါ GitHub Actions workflow မှတဆင့် တင်ပို့သည်
```
Azure Static Web Apps စနစ်ဖောင့်ကွက်များ-
Azure Static Web Apps configuration:
- **App location**: `/quiz-app`
- **Output location**: `dist`
- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
@ -196,86 +196,87 @@ Azure Static Web Apps စနစ်ဖောင့်ကွက်များ-
### Documentation PDF Generation
```bash
npm install # docsify-to-pdf ကို ထည့်သွင်းပါ
npm run convert # docs မှ PDF ကို ဖန်တီးပါ
npm install # docsify-to-pdf ကို 설치 하십시오
npm run convert # docs မှ PDF ကို 생성하십시오
```
### Docsify Documentation
```bash
npm install -g docsify-cli # Docsify ကို စုစုပေါင်း ထည့်သွင်းပါ
docsify serve # localhost:3000 တွင် ဝန်ဆောင်မှုပေးပါ
npm install -g docsify-cli # Docsify ကို ကမ္ဘာလုံးဆိုင်ရာ ထည့်သွင်းပါ
docsify serve # localhost:3000 တွင် စနစ်ဆောင်ပါ
```
### Project-specific Builds
စီမံကိန်းတိုင်းတွင် ကိုယ်ပိုင် တည်ဆောက်မှု လုပ်ငန်းစဉ်များ ရှိနိုင်သည်-
- Vue စီမံကိန်းများ: `npm run build` ဖြင့် ထုတ်လုပ်မှု bundle များ ပြုလုပ်ခြင်း
- Static စီမံကိန်းများ: တည်ဆောက်မှုပြုလုပ်မှု လိုအပ်မှု မရှိပါ၊ ဖိုင်များကို တိုက်ရိုက် ဝန်ဆောင်မှုပေးခြင်း
ပရောဂျက် directory တစ်ခုချင်းစီတွင် build လုပ်ငန်းစဉ် များလည်း ရှိနိုင်သည် -
- Vue ပရောဂျက်များ: `npm run build` မှာ production bundle များဖန်တီးသည်
- Static ပရောဂျက်များ: build လုပ်ရန် မလိုအပ်ပါ၊ ဖိုင်များကိုတန်းတူ serve ပြုလုပ်သည်
## Pull Request Guidelines
### Title Format
ပြောင်းလဲမှု နေရာအတိုင်း ဖြည့်သွင်းဖေါ်ပြရန်-
- `[Quiz-app] သင်ခန်းစာ X အတွက် Quiz အသစ် ထည့်ရန်`
- `[Lesson-3] Terrarium စီမံကိန်းတွင် အမှားစာလုံးပြင်ဆင်ခြင်း`
- `[Translation] သင်ခန်းစာ ၅ အတွက် စပိန်ဘာသာပြန်ထည့်ခြင်း`
- `[Docs] Setup လမ်းညွှန်ချက်များ ပြင်ဆင်ခြင်း`
ပြင်ဆင်မှု လုပ်ဆောင်သော နေရာကို ပြသသည့် ရှင်းလင်းအသိပေးခေါင်းစဉ်များ၌ များသုံးရန် -
- `[Quiz-app] သင်ခန်းစာ X အတွက် quiz အသစ်ထည့်ပါ`
- `[Lesson-3] terrarium ပရောဂျက်တွင် အမှားတစ်ခု ပြင်ဆင်ပါ`
- `[Translation] သင်ခန်းစာ ၅ အတွက် စပိန်ဘာသာ ပြန်တင်ဘှဲ့ပါ`
- `[Docs] Setup အဆင့်ညွှန်ကြားချက်များ အပ်ဒိတ်ပြုလုပ်ပါ`
### Required Checks
PR တင်ပြီးမတိုင်မီ-
PR တင်မည့်အချိန် မတိုင်မီ -
1. **ကုဒ်အရည်အသွေး**:
- သက်ဆိုင်ရာ စီမံကိန်း ဒိုင်ရေးတရီတွင် `npm run lint` ကို အသုံးပြု၍ အမှားများ ဖော်ထုတ်ရန်
- လုံးလုံးမကျန် အမှား နှင့် သတိပေးချက် များ ပြင်ဆင်ပါ
1. **Code ပြည့်စုံမှု**
- သက်ဆိုင်ရာ project directory များတွင် `npm run lint` ကို လုပ်ပါ
- အမှားများနှင့် အသိပေးချက်များကို ပြင်ဆင်ပါ
2. **တည်ဆောက်မှု စစ်ဆေးခြင်း**:
- `npm run build` (လိုအပ်ပါက) အလုပ်လုပ်၍ အမှားမရှိစေရန်
2. **Build စစ်ဆေးခြင်း**
- လိုအပ်ပါက `npm run build` ပြုလုပ်ပါ
- build အမှား မရှိပါစေ
3. **လင့်ခ် စစ်ဆေးမှု**:
- markdown link များအားလုံး ရှင်းလင်းမှန်ကန်စွာ လည်ပတ်ခြင်း
- ဓာတ်ပုံ နှင့် ရုပ်ပုံများ ရောက်ရှိမှု
3. **Link စစ်ဆေးခြင်း**
- Markdown လင့်ခ်များအားလုံးကို စမ်းသပ်ပါ
- ဓာတ်ပုံများ ရှိမရှိ စစ်ဆေးပါ
4. **အကြောင်းအရာ ပြန်လည် သုံးသပ်ခြင်း**:
- စကားလုံးမှား၊ သဒ္ဒါမှားများကို စစ်ချက်ပေးခြင်း
- ကုဒ်ဥပမာများ သင်ယူရန်တိကျမှန်ကန်စွာ ရှိခြင်း
- ဘာသာပြန်များသည် မူလ အဓိပ္ပါယ်ကို ထိန်းသိမ်းထားခြင်း
4. **အကြောင်းအရာ စစ်တမ်း**
- စာလုံးပျက်မှားနှင့် သဒ္ဒါ အမှား မရှိစေရန် စစ်ဆေးပါ
- Code ဥပမာများ မှန်ကန်ပြီး သင်ကြားမှုရှိစေရန် စစ်ဆေးပါ
- ဘာသာပြန်မှုများ အဓိပ္ပါယ်မပြောင်းဘဲ တိကျမှုရှိစေရန် စစ်ဆေးပါ
### Contribution Requirements
- Microsoft CLA ကို သဘောတူပါ (PR ပထမဆုံးပြုလုပ်ချိန် တွင် အလိုအလျောက် စစ်ဆေးမည်)
- [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) လိုက်နာပါ
- အသေးစိတ် လမ်းညွှန်ချက်များအတွက် [CONTRIBUTING.md](./CONTRIBUTING.md) ကို ကြည့်ပါ
- PR ဖေါ်ပြချက်တွင် လိုအပ်ပါက ရှေ့ပြေး ဥပဒေအမှတ်များကို ထည့်သွင်းပါ
- Microsoft CLA ကို သဘောတူရပါမည် (ပထမ PR တွင် အလိုအလျောက် စစ်ဆေးသည်)
- [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/) ကို နောက်ဆုံးလိုက်နာရမည်
- အသေးစိတ်အတွက် [CONTRIBUTING.md](./CONTRIBUTING.md) ကို ကြည့်ပါ
- PR ဖေါ်ပြချက်တွင် issue နံပါတ်များကို ရည်ညွှန်းပါ
### Review Process
- PR များသည် ပြုပြင်သူများနှင့် မိသားစုအသိုင်းအဝိုင်း အကြား ကြည့်သုံးစစ်ဆေးခြင်း
- ပညာရေး ရည်ရွယ်ချက် ဦးစားပေး စစ်ဆေးခြင်း
- ကုဒ်ဥပမာများသည် လောလောဆယ် အကောင်းဆုံး လေ့လာသင်ယူနည်းများနှင့် ကိုက်ညီစေရန
- ဘာသာပြန်အရည်အသွေးနှင့် ယဉ်ကျေးမှု သင်္ကေတတပ်ဖွဲ့မှု ရှိအောင် စစ်ဆေးခြင်း
- PR များသည် Maintainer များနှင့် အသိုင်းအဝိုင်းအားဖြင့် စစ်ဆေးသည်
- ပညာရေး ရှင်းလင်းမှုကို အလေးထားသည်
- Code ဥပမာများသည် လက်ရှိအကောင်းဆုံးနည်းလမ်းများနှင့် မညီမှု မရှိစေရန် ကြိုတင်စစ်ဆေးသည
- ဘာသာပြန်မှုများအား တိကျမှုနှင့် ယဉ်ကျေးမှုအရ သက်ဆိုင်မှုရှိစေရန် ပြန်လည်သုံးသပ်သည်
## Translation System
### Automated Translation
- GitHub Actions တွင် နေရာယူထားသည့် co-op-translator workflow ကို အသုံးပြုသည်
- ၅၀ ကျော်ဘာသာစကားသို့ အလိုအလျောက် ဘာသာပြန်သည်
- မူရင်းဖိုင်များသည် မူလ ဒိုင်ရေးတရီများတွင
- ဘာသာပြန်ထားသောဖိုင်များသည် `translations/{language-code}/` တွင
- GitHub Actions သုံးပြီး co-op-translator workflow အသုံးပြုသည်
- ၅၀ ကျော်သော ဘာသာစကားများအတွက် အလိုအလျောက် ဘာသာပြန်ပေးသည်
- မူလဖိုင်များသည် main directory များတွင်ရှိသည
- ဘာသာပြန်ထားသော ဖိုင်များကို `translations/{language-code}/` ထဲတွင် သိမ်းဆည်းထားသည
### Adding Manual Translation Improvements
1. `translations/{language-code}/` တွင် ဖိုင် ရှာပါ
2. ဖွဲ့စည်းပုံကို ထိန်းသိမ်းပြီး တိုးတက်အောင် ပြုပြင်ပါ
3. ကုဒ်ဥပမာများ အသုံးပြုနိုင်မှု ရှိသည်ကို သေချာစေရန်
4. ဒေသဆိုင်ရာ Quiz အကြောင်းအရာ စမ်းသပ်ပါ
1. `translations/{language-code}/` တွင် ဖိုင်များကို ရှာတွေ့ပါ
2. ဖွဲ့စည်းမှုမပြောင်းလဲဘဲ တိုးတက်မှုများ ပြုလုပ်ပါ
3. Code ဥပမာများ မပျက်မကွက် ဆက်လက်လုပ်ဆောင်နိုင်စေရန် သတိပြုပါ
4. ညှိနှိုင်းထားသော Quiz အကြောင်းအရာ များကို စမ်းသပ်ပါ
### Translation Metadata
ဘာသာပြန် ဖိုင်များတွင် metadata ခေါင်းစဉ်ပါရှိသည်-
ဘာသာပြန် ဖိုင်များတွင် မီတာဒေတာ ခေါင်းစီးပါဝင်သည် -
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -292,116 +293,116 @@ CO_OP_TRANSLATOR_METADATA:
### Common Issues
**Quiz app မတက်အောင် ရှုပ်ထွေးမှုများ**:
- Node.js ဗားရှင်း (v14+ အကြံပြု)
- `node_modules` နှင့် `package-lock.json` ဖိုင်များ ဖျက်ပြီး `npm install` ပြန်လည်ပြုလုပ်ပါ
- Vite သည် အခြား port 5173 ကိုသုံးပြီး ရပ်တန့်မှုရှိမရှိ စစ်ဆေးပါ
**Quiz app တက်ရန် မအောင်မြင်ခြင်း**:
- Node.js ဗားရှင်း (v14+) ကို စစ်ဆေးပါ
- `node_modules` နှင့် `package-lock.json` ဖိုင်များ ဖျက်ပြီး `npm install` ပြန်တင်ပါ
- Port ပိုင်း ယှဉ်ပြိုင်မှုရှိနိုင်မရှိ စစ်ဆေးပါ (default: Vite သည် port 5173 သုံးသည်)
**API server မစခင်**:
- Node.js ဗားရှင်း (node >=10) ဖြစ်ကြောင်း အတည်ပြုပါ
- Port လုပ်ဆောင်မှု ရှိ/မရှိ စစ်ပါ
- `npm install` ဖြင့် အားလုံး dependency များထည့်သွင်းထားခြင်း
**API server မတက်ခြင်း**:
- Node.js ဗားရှင်းအနည်းဆုံး node >=10 ဖြစ်မဖြစ် စစ်ဆေးပါ
- Port သုံးနေခြင်း ရှိမရှိ စစ်ဆေးပါ
- `npm install` ဖြင့် အားလုံး dependencies ထည့်သွင်းထားခြင်း စစ်ဆေးပါ
**Browser extension မတက်တာ**:
- manifest.json အသေးစိတ် ပုံစံ မှန်ကန်မှု စစ်ဆေးပါ
- Browser console တွင် အမှား ရှိ မရှိ စစ်ပါ
- Browser-specific extension installation လမ်းညွှန်ချက်များ လိုက်နာပါ
**Browser extension မတက်ခြင်း**:
- manifest.json ဖိုင် format မှန်ကန်မှုစစ်ပါ
- Browser console တွင် အမှားများရှိမရှိ စစ်ဆေးပါ
- Browser အလိုက် extension ထည့်သွင်းနည်းများ လိုက်နာပါ
**Python chat project ပြဿနာများ**:
- OpenAI package ကို ထည့်သွင်းထားခြင်း - `pip install openai`
- GITHUB_TOKEN environment variable မှန်ကန်စွာ သတ်မှတ်ထားခြင်း
- GitHub Models ၏ လုပ်ဆောင်ခွင့် ရှိစေရန် စစ်ဆေးပါ
**Python chat project အခက်အခဲများ**:
- OpenAI package ထည့်သွင်းထားၿပီးဖြစ်စေရန် `pip install openai`
- GITHUB_TOKEN environment variable ဖော်ပြထားရေးစစ်ပါ
- GitHub Models အသုံးခွင့်ရှိရေးစစ်ဆေးပါ
**Docsify docs မပေးဆောင်တာ**:
- docsify-cli ကို ကမ္ဘာလုံးဆိုင်ရာ ထည့်သွင်းထားရန် - `npm install -g docsify-cli`
- ဂိုဒေါင် root ဒိုင်ရေးတရီမှ မိမိ အမိန့်ပြုလုပ်ပါ
- `docs/_sidebar.md` ရှိ/မရှိ စစ်ဆေးပါ
**Docsify က စာတမ်း မတက်ခြင်း**:
- 글로벌အဆင့် docsify-cli ထည့်သွင်းရန် `npm install -g docsify-cli`
- Repository ရဲ့ root directory မှ စတင်ပါ
- `docs/_sidebar.md` ရှိမရှိ စစ်ဆေးပါ
### Development Environment Tips
- VS Code Live Server extension ဖြင့် HTML စီမံကိန်းများ အတွက် အသုံးပြုပါ
- ESLint နှင့် Prettier extension များ ထည့်သွင်းပါ
- Browser DevTools ဖြင့် JavaScript နဲ့အတူ debugging လုပ်ပါ
- Vue စီမံကိန်းများအတွက် Vue DevTools browser extension ထည့်သွင်းပါ
- HTML project များအတွက် VS Code Live Server extension အား အသုံးပြုပါ
- ESLint နှင့် Prettier extension များ ထည့်သွင်းထားပြီး ဖြည်းညည်းစွာ format ပြုလုပ်ပါ
- JavaScript debugging အတွက် browser DevTools ကို အသုံးပြုပါ
- Vue project များအတွက် Vue DevTools browser extension ထည့်သွင်းပါ
### Performance Considerations
- ဘာသာပြန်ဖိုင် အရေအတွက် မာနကျွန်းကြီး ဖြစ်လို့ (၅၀+ ဘာသာစကား) full clone များ ကြီးတယ
- အချက်အလက်များပဲ အလုပ်လုပ်မည်ဆို shallow clone ကို အသုံးပါ - `git clone --depth 1`
- အင်္ဂလိပ်အကြောင်းအရာတွင် လုပ်နေစဉ် ဘာသာပြန်များကို ရှာဖွေမှုမှ ထုတ်ပယ်ပါ
- ပထမဆုံးအသုံးပြုမှုတွင် build လုပ်ခြင်းဟာ ကြာမြင့်နိုင်သည် (npm install, Vite build)
- ဘာသာပြန်ဖိုင် အရေအတွက် များ (၅၀ ကျော် ဘာသာစကား) ဖြစ်သောကြောင့် full clone များ ကြီးမားသည
- အကြောင်းအရာသာ အလုပ်လုပ်မည့်အခါ shallow clone (`git clone --depth 1`) အသုံးပြုပါ
- English အကြောင်းအရာ နှင့်အလုပ်လုပ်သောအခါ ဘာသာပြန် ဖိုင်များကို ရှာဖွေနေရာမှ ဖယ်ရှားပါ
- npm install, Vite build စသည့် စွမ်းဆောင်ရည်တွေ ပထမဆုံးပြေးတဲ့အချိန် စို့မြန်မှု နည်းနိုင်သည်
## Security Considerations
### Environment Variables
- API keys ကို ဂိုဒေါင်ထဲ မထည့်သွင်းကြပါနှင့်
- `.env` ဖိုင်များကို အသုံးပြုပါ (.gitignore ထဲတွင် ပါရှိပြီး)
- စီမံကိန်း README များတွင် လိုအပ်သည့် Environment Variables များ ဖော်ပြပါ
- API keys မည်သည့် အချိန်မှ repository ထဲ မသိမ်းဆည်းရ
- `.env` ဖိုင်များကို အသုံးပြုပါ (ပြီးသား `.gitignore` ထဲမှာ ပါရှိ)
- Project README မှာ လိုအပ်သော environment variables များ ဖော်ပြထားပါ
### Python Projects
- virtual environments အသုံးပြုပါ - `python -m venv venv`
- dependency များကို အသစ်တင် ကျင်းပပေးပါ
- GitHub tokens များသည် လိုအပ်သော မူလ ခွင့်ပြုချက်များသာရှိစေရန်
- virtual environments အသုံးပြုပါ: `python -m venv venv`
- dependencies များ ကိုပုံမှန် update လုပ်ပါ
- GitHub tokens များတွင် လိုအပ်တဲ့ ခွင့်ပြုချက် အနည်းဆုံးပဲ သတ်မှတ်ထားပါ
### GitHub Models Access
- GitHub Models အတွက် Personal Access Tokens (PAT) လိုအပ်သည်
- ကုဒ်များကို environment variables အဖြစ် သိမ်းဆည်းထားပါ
- Tokens သို့မဟုတ် လျှို့ဝှက်ချက်များကို ရိုးရိုး GitHub repo ထဲ မသိမ်းပါနှင့်
- GitHub Models အသုံးပြုရန် Personal Access Tokens (PAT) လိုအပ်သည်
- Tokens များကို environment variables အဖြစ် သိမ်းဆည်းပါ
- Tokens သို့မဟုတ် credentials မဖြန့်ဝေပါနှင့်
## Additional Notes
### Target Audience
- ဝက်ဘ်ဖွံ့ဖြိုးမှု စပြိုင်သူ အသစ်များအတွက်
- ကျောင်းသားများနှင့် ကိုယ်တိုင် သင်ယူလိုသူများ
- သင်တန်းဆရာများ သင်တန်းတွင် အသုံးပြုရန်
- မည်သူ့အတွက်မျှ ဝင်ရောက်လွယ်ကူစေနိုင်တယ်၊ တန်ဖိုးရှိစွာ ကျွမ်းကျင်မှု တိုးတတ်အောင် ဆောင်ရွက်ခြင်း
- ဝက်ဘ် ဖွံ့ဖြိုးတိုးတက်မှု အစစ်အပိုင်းက စတင်လေ့လာသူများ
- ကျောင်းသားများနှင့် ကိုယ်တိုင် လေ့လာသူများ
- သင်တန်းခန်းများတွင် သင်ကြားသူများ
- အသုံးပြုရ လွယ်ကူပြီး တန်းတူဖြိုးတိုးမှု အတွက် အကြောင်းအရာများ ပါဝင်သည်
### Educational Philosophy
- စီမံကိန်းအခြေခံ သင်ယူမှု နည်းစနစ်
- မကြာခဏ အသိပညာ စစ်ဆေးမှုများ (quiz များ)
- လက်တွေ့ သင်ကြားရေး ရေးသားကိုယ်တိုင်လုပ်ခြင်
- အမှန်တကယ် အသုံးချနိုင်သော ဥပမာများ
- Framework များ မသတ်မှတ်ခင် အခြေခံကို အလေးထား ဆောင်ရွက်ခြင်း
- ပရောဂျက်အခြေပြု သင်ယူခြင်း
- မကြာခဏ အသိပညာ စစ်တမ်းများ (quiz)
- လက်တွေ့ coding လေ့ကျင့်ခန်းမျာ
- အပြင်လောက သုံးသပ်မှု ဥပမာများ
- Framework မတိုင်မှီ အခြေခံကို အလေးပေးခြင်း
### Repository Maintenance
- လေ့လာသူများနှင့် ပံ့ပိုးသူများ၏ လှုပ်ရှားမှု မြင့်မားခြင်း
- dependency များနှင့် အကြောင်းအရာများအား ပုံမှန် အပ်ဒိတ်လုပ်ခြင်း
- ပြဿနာများနှင့် ဆွေးနွေးချက်များကို အသိအမှတ်ပြုသူများက လိုက်ပါစောင့်ကြည့်ခြင်း
- ဘာသာပြန်အပ်ဒိတ်များ ကို GitHub Actions အလိုအလျောက် ပြုလုပ်ခြင်း
- လေ့လာသူများနှင့် ပံ့ပိုးသူများ၏ ပြန်လည်ဆွေးနွေးမှုရှိသော လူ့အသိုင်းအဝိုင်း တက်ကြွကောင်းမွန်သည့် အခြေအနေ
- dependencies နှင့် အကြောင်းအရာများ ဆက်လက် update လုပ်ဆောင်ခြင်း
- Issue များနှင့် ဆွေးနွေးမှု များကို Maintainer များ ကြီးကြပ်စောင့်ရှောက်ခြင်း
- ဘာသာပြန်ချက် update များကို 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) ကို သင်ယူသူများအတွက် အကြံပြုပါသည်
- အပိုသင်တန်းများ: Generative AI, Data Science, ML, IoT သင်ရိုးအစီအစဉ်များ ရရှိနိုင်သည်
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) သည် လေ့လာသူများအတွက် အကြံပြုသည်
- အပိုဆောင်းသင်တန်းများ: Generative AI, Data Science, ML, IoT သင်ရိုးညွှန်းတမ်းများ လည်း ရရှိနိုင်သည်
### Working with Specific Projects
တစ်ဦးချင်းစီ စီမံကိန်းများအတွက် အသေးစိတ် ဖော်ပြချက်များကို README ဖိုင်များတွင် ကြည့်ရှုနိုင်ပါသည်-
- `quiz-app/README.md` - Vue 3 quiz အပ်လီကေးရှင်း
- `7-bank-project/README.md` - အခြေခံအတည်ပြုမှု ပါဝင်သည့် ဘဏ်လုပ်ငန်း အက်ပ်
- `5-browser-extension/README.md` - Browser extension ဖန်တီးခြင်း
- `6-space-game/README.md` - ကမ်းဗတ်အခြေခံ ဂိမ်းဖန်တီးခြင်း
- `9-chat-project/README.md` - AI စကားပြော အကူအညီ နှင့် ဆော့ဖ်ဝဲ
ပရောဂျက်အသီးသီးတွင် အသေးစိတ်ညွှန်ကြားချက်များအတွက် သက်ဆိုင်ရာ README ဖိုင်များကို ကြည့်ပါ -
- `quiz-app/README.md` - Vue 3 quiz application
- `7-bank-project/README.md` - Authentication နှင့် ထည့်သွင်းထားသော Banking application
- `5-browser-extension/README.md` - Browser extension တည်ဆောက်ခြင်း
- `6-space-game/README.md` - Canvas အခြေပြု ကစားပွဲ ဖန်တီးခြင်း
- `9-chat-project/README.md` - AI chat assistant project
### Monorepo Structure
ယခု ဂိုဒေါင်သည် စံထုံးမရှိသော်လည်း သီးခြား စီမံကိန်းများများ ပါဝင်သည်-
- သင်ခန်းစာ တစ်ခုချင်းစီသည် ကိုယ်ပိုင် အပိုင်းဖြစ်သည်
- စီမံကိန်းများက dependency များ မမျှဝေပဲ သီးခြားလုပ်ဆောင်ထားသည်
- တစ်စီတစ်ရာ အပေါ် မသက်ရောက်စေရန် သီးခြားစီမံကိန်းများကို လုပ်ဆောင်နိုင်သည်
- အပြည့်အစုံသော သင်ရိုးကို အတွေ့အကြုံယူရန် ဂိုဒေါင်တခုလုံးကို clone လုပ်ပါ။
ဒီ repository သည် ယေဘုယျ monorepo မဟုတ်ပေမယ့် ပရောဂျက်အမျိုးမျိုး ဦးတည်ထားသည် -
- သင်ခန်းစာ တစ်ခုချင်းစီကို မတူညီပဲ သီးခြားထားသည်
- ပရောဂျက်များသည် dependencies များ မမျှဝေကြ
- တစ်ခုတည်းသော ပရောဂျက်ကို ပြင်ဆင်ခြင်းသည် အခြားများအား ထိခိုက်မှု မရှိစေရန် ဖြစ်သည်
- အတူတကွ သင်ရိုးပုံစံ အပြည့်အဝကို ထည့်သွင်းဖို့အတွက် repository များကို စုပေါင်း clone လုပ်နိုင်သည်
---
<!-- 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 -->

@ -1,7 +1,7 @@
{
"1-getting-started-lessons/1-intro-to-programming-languages/README.md": {
"original_hash": "bec5e35642176d9e483552bfc82996d8",
"translation_date": "2026-03-06T17:09:40+00:00",
"original_hash": "d5eeb6e975b5864d8da52d4a41941f8d",
"translation_date": "2026-03-27T23:02:16+00:00",
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/README.md",
"language_code": "uk"
},
@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-03-06T17:19:32+00:00",
"translation_date": "2026-03-27T23:09:23+00:00",
"source_file": "AGENTS.md",
"language_code": "uk"
},

@ -2,27 +2,27 @@
## Огляд проекту
Це навчальний репозиторій з курикулумом для викладання основ веб-розробки початківцям. Курикулум — це всебічний 12-тижневий курс, розроблений Microsoft Cloud Advocates, що містить 24 практичні уроки з JavaScript, CSS та HTML.
Це навчальний репозиторій курсу для викладання основ веб-розробки початківцям. Курс є комплексним 12-тижневим навчальним планом, розробленим Microsoft Cloud Advocates, що включає 24 практичні уроки з JavaScript, CSS та HTML.
### Ключові компоненти
- **Навчальний контент**: 24 структуровані уроки, організовані в модулі на основі проектів
- **Практичні проекти**: Terrarium, Typing Game, Розширення браузера, Space Game, Банківський додаток, Редактор коду та AI чат-асистент
- **Інтерактивні вікторини**: 48 вікторин по 3 питання в кожній (до та після уроку)
- **Підтримка кількох мов**: Автоматичні переклади понад 50 мов за допомогою GitHub Actions
- **Технології**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (для AI-проектів)
- **Навчальний контент**: 24 структуровані уроки, організовані у модулі на основі проектів
- **Практичні проекти**: Терраріум, Мережна гра, Розширення для браузера, Космічна гра, Банківський додаток, Редактор коду та AI чат-асистент
- **Інтерактивні тести**: 48 тестів по 3 питання кожен (до/після уроку)
- **Підтримка багатьох мов**: Автоматичний переклад понад 50 мов за допомогою GitHub Actions
- **Технології**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (для AI-проектів)
### Архітектура
- Навчальний репозиторій зі структурою на основі уроків
- У кожній папці уроку є README, приклади коду та рішення
- Автономні проекти в окремих каталогах (quiz-app, різні проекти уроків)
- Система перекладів з використанням GitHub Actions (co-op-translator)
- Документація подається через Docsify та доступна у форматі PDF
- Навчальний репозиторій зі структурою на основі уроків
- Кожна папка з уроком містить README, приклади коду та розв’язки
- Окремі автономні проекти у власних директоріях (quiz-app, різні проекти уроків)
- Система перекладів з використанням GitHub Actions (co-op-translator)
- Документація подається через Docsify та доступна в PDF
## Команди налаштування
## Команди для налаштування
Цей репозиторій призначений переважно для споживання освітнього контенту. Для роботи з окремими проектами:
Цей репозиторій призначений передусім для споживання навчального контенту. Для роботи з конкретними проектами:
### Основне налаштування репозиторію
@ -30,18 +30,18 @@
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
cd Web-Dev-For-Beginners
```
### Налаштування Quiz App (Vue 3 + Vite)
### Налаштування додатку Quiz (Vue 3 + Vite)
```bash
cd quiz-app
npm install
npm run dev # Запустити сервер розробки
npm run build # Зібрати для продакшена
npm run build # Зібрати для продакшн
npm run lint # Запустити ESLint
```
### API банківського проекту (Node.js + Express)
### API банківського проєкту (Node.js + Express)
```bash
cd 7-bank-project/api
@ -50,23 +50,23 @@ npm start # Запустити API сервер
npm run lint # Запустити ESLint
npm run format # Відформатувати за допомогою Prettier
```
### Проекти розширень браузера
### Проекти розширень для браузера
```bash
cd 5-browser-extension/solution
npm install
# Дотримуйтесь інструкцій з завантаження розширень, специфічних для браузера
# Дотримуйтесь інструкцій із завантаження розширень, специфічних для браузера
```
### Проекти гри у космосі
### Проекти космічної гри
```bash
cd 6-space-game/solution
npm install
# Відкрийте index.html у браузері або використовуйте Live Server
# Відкрийте index.html у браузері або використайте Live Server
```
### Чат-проект (бекенд на Python)
```bash
@ -75,34 +75,34 @@ pip install openai
# Встановіть змінну середовища GITHUB_TOKEN
python api.py
```
## Робочий процес розробки
### Для контрибуторів контенту
### Для учасників контенту
1. **Форкніть репозиторій** у свій обліковий запис GitHub
2. **Клонуйте ваш форк** локально
3. **Створіть нову гілку** для ваших змін
4. Вносьте зміни в контент уроків або приклади коду
5. Тестуйте зміни коду у відповідних директоріях проектів
6. Надсилайте pull request відповідно до інструкцій з внесення
1. **Форкніть репозиторій** у ваш обліковий запис GitHub
2. **Клонуйте свій форк** локально
3. **Створіть нову гілку** для ваших змін
4. Вносіть зміни в контент уроків або приклади коду
5. Тестуйте зміни коду у відповідних директоріях проектів
6. Надсилайте pull request відповідно до правил внеску
### Для учнів
1. Форкніть або клонують репозиторій
2. Перейдіть у каталоги уроків послідовно
3. Читайте README файли кожного уроку
4. Пройдіть початкові вікторини на https://ff-quizzes.netlify.app/web/
5. Опрацьовуйте приклади коду в папках уроків
6. Виконуйте завдання і виклики
7. Пройдіть фінальні вікторини
1. Форкніть або клонуюйте репозиторій
2. Перейдіть до директорій уроків послідовно
3. Читайте README файли кожного уроку
4. Виконуйте тести перед уроком на https://ff-quizzes.netlify.app/web/
5. Працюйте з прикладами коду у папках уроку
6. Виконуйте завдання та виклики
7. Пройдіть тести після уроку
### Жива розробка
- **Документація**: Запустіть `docsify serve` у корені (порт 3000)
- **Quiz App**: Запустіть `npm run dev` у директорії quiz-app
- **Проекти**: Використовуйте розширення VS Code Live Server для HTML-проектів
- **API-проекти**: Запускайте `npm start` у відповідних API папках
- **Документація**: Запустіть `docsify serve` в корені репозиторію (порт 3000)
- **Quiz App**: Запуск `npm run dev` в директорії quiz-app
- **Проекти**: Використовуйте розширення VS Code Live Server для HTML-проектів
- **API проекти**: Запуск `npm start` у відповідних API-директоріях
## Інструкції з тестування
@ -113,170 +113,170 @@ cd quiz-app
npm run lint # Перевірте на наявність проблем зі стилем коду
npm run build # Переконайтеся, що збірка успішна
```
### Тестування Bank API
```bash
cd 7-bank-project/api
npm run lint # Перевірте наявність проблем зі стилем коду
npm run lint # Перевірте на наявність проблем зі стилем коду
node server.js # Переконайтеся, що сервер запускається без помилок
```
### Загальний підхід до тестування
- Це навчальний репозиторій без комплексних автоматизованих тестів
- Ручне тестування зосереджено на:
- Коректному виконанні прикладів коду без помилок
- Роботі посилань у документації
- Успішних збірках проектів
- Дотриманні найкращих практик у прикладах
- Це навчальний репозиторій без повного набору автоматизованих тестів
- Ручне тестування зосереджене на:
- Виконання коду без помилок
- Коректність посилань у документації
- Успішне завершення збірок проектів
- Використання кращих практик у прикладах
### Перевірки перед відправкою
### Перевірки перед поданням
- Запускайте `npm run lint` у директоріях з package.json
- Переконуйтесь, що посилання у markdown дійсні
- Тестуйте приклади коду у браузері або Node.js
- Перевіряйте, що переклади зберігають правильну структуру
- Запустіть `npm run lint` у директоріях з package.json
- Переконайтеся, що всі markdown-посилання валідні
- Перевірте приклади коду в браузері або Node.js
- Переконайтеся, що переклади збережено правильною структурою
## Керівництво зі стилю коду
### JavaScript
- Використовуйте сучасний синтаксис ES6+
- Дотримуйтесь стандартних конфігурацій ESLint у проектах
- Використовуйте осмислені імена змінних і функцій для кращого навчання
- Додавайте коментарі, що пояснюють концепції для учнів
- Форматуйте код з Prettier там, де це настроєно
- Використовуйте сучасний синтаксис ES6+
- Дотримуйтеся стандартних конфігурацій ESLint у проектах
- Використовуйте зрозумілі назви змінних і функцій для навчальної ясності
- Додавайте коментарі із поясненнями концепцій для учнів
- Форматуйте код за допомогою Prettier, якщо налаштовано
### HTML/CSS
- Семантичні елементи HTML5
- Принципи адаптивного дизайну
- Чіткі конвенції іменування класів
- Коментарі, що пояснюють CSS-техніки для учнів
- Семантичні елементи HTML5
- Принципи адаптивного дизайну
- Чіткі конвенції іменування класів
- Коментарі з поясненнями CSS для учнів
### Python
- Дотримуйтесь стилю PEP 8
- Чіткі навчальні приклади коду
- Використовуйте типізацію, коли це корисно для навчання
- Дотримання стилю PEP 8
- Зрозумілі, освітні приклади коду
- Типові підказки там, де це допомагає для вивчення
### Документація Markdown
### Документація у Markdown
- Чітка ієрархія заголовків
- Блоки коду з вказаною мовою
- Посилання на додаткові ресурси
- Знімки екрану та зображення у папках `images/`
- Опис для зображень для доступності
- Чітка ієрархія заголовків
- Блоки коду з вказанням мови
- Посилання на додаткові ресурси
- Скриншоти та зображення у папках `images/`
- Атрибути alt для зображень для доступності
### Організація файлів
- Уроки нумеруються послідовно (1-getting-started-lessons, 2-js-basics тощо)
- Кожен проект має папки `solution/` і часто `start/` або `your-work/`
- Зображення зберігаються в окремих папках `images/` для кожного уроку
- Переклади розташовані в структурах `translations/{language-code}/`
- Уроки нумеруются послідовно (1-getting-started-lessons, 2-js-basics тощо)
- Кожен проект має каталоги `solution/` та зазвичай `start/` або `your-work/`
- Зображення зберігаються у специфічних для уроків папках `images/`
- Переклади знаходяться у структурах `translations/{language-code}/`
## Збірка і розгортання
## Збірка та розгортання
### Розгортання Quiz App (Azure Static Web Apps)
quiz-app налаштований для розгортання в Azure Static Web Apps:
Quiz-app налаштовано для розгортання в Azure Static Web Apps:
```bash
cd quiz-app
npm run build # Створює папку dist/
# Розгортає за допомогою робочого процесу GitHub Actions при пуші до main
# Розгортає через GitHub Actions workflow при пуші в main
```
Конфігурація Azure Static Web Apps:
- **Розташування додатку**: `/quiz-app`
- **Папка виводу**: `dist`
- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Генерація PDF документації
Налаштування Azure Static Web Apps:
- **Місцезнаходження додатку**: `/quiz-app`
- **Вихідна папка**: `dist`
- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Генерація PDF-документації
```bash
npm install # Встановити docsify-to-pdf
npm run convert # Згенерувати PDF з документів
npm install # Встановіть docsify-to-pdf
npm run convert # Згенерувати PDF з docs
```
### Документація Docsify
```bash
npm install -g docsify-cli # Встановити Docsify глобально
docsify serve # Запустити на localhost:3000
npm install -g docsify-cli # Встановіть Docsify глобально
docsify serve # Запустіть на localhost:3000
```
### Збірки для конкретних проектів
Кожна директорія проекту може мати свій процес збірки:
- Vue-проекти: `npm run build` створює production-бандли
- Статичні проекти: немає кроку збірки, файли подаються напряму
### Збірки проектів
Кожна директорія проекту може мати власний процес збірки:
- Vue-проекти: `npm run build` для створення продакшн-бандлів
- Статичні проекти: немає кроку збірки, файли подаються напряму
## Керівництво для Pull Request
## Правила Pull Request
### Формат заголовку
### Формат заголовка
Використовуйте чіткі описові заголовки, що вказують сферу змін:
- `[Quiz-app] Додати нову вікторину для уроку X`
- `[Lesson-3] Виправити опечатку в проекті terrarium`
- `[Translation] Додати іспанський переклад для уроку 5`
- `[Docs] Оновити інструкції з налаштування`
Використовуйте чіткі, описові заголовки, що вказують на зону змін:
- `[Quiz-app] Додати новий тест для уроку X`
- `[Lesson-3] Виправити помилку в проекті терраріум`
- `[Translation] Додати іспанський переклад для уроку 5`
- `[Docs] Оновити інструкції з налаштування`
### Обов’язкові перевірки
### Вимоги до перевірок
Перед подачею PR:
Перед поданням PR:
1. **Якість коду**:
- Запустіть `npm run lint` у відповідних каталогах
- Виправте всі помилки та попередження lint
1. **Якість коду**:
- Запустіть `npm run lint` у відповідних директоріях проектів
- Виправте всі помилки та попередження lint
2. **Перевірка збірки**:
- Якщо застосовно, запустіть `npm run build`
- Переконайтесь, що немає помилок збірки
2. **Перевірка збірки**:
- Запустіть `npm run build` якщо застосовано
- Переконайтеся, що нема помилок збірки
3. **Перевірка посилань**:
- Перевірте всі markdown-посилання
- Переконайтесь, що зображення відображаються правильно
3. **Перевірка посилань**:
- Перевірте всі markdown-посилання
- Переконайтеся, що посилання на зображення працюють
4. **Перегляд контенту**:
- Перевірте орфографію та граматику
- Переконайтесь, що приклади коду коректні і зрозумілі
- Перевірте, що переклади зберігають оригінальний зміст
4. **Перевірка контенту**:
- Вичитайте на предмет орфографії та граматики
- Переконайтеся у правильності та освітності прикладів коду
- Перевірте переклади на збереження початкового значення
### Вимоги до внеску
- Погодитись з Microsoft CLA (автоматична перевірка при першому PR)
- Дотримуватись [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- Детальні інструкції в [CONTRIBUTING.md](./CONTRIBUTING.md)
- Якщо є, вказуйте номери issues у описі PR
- Погодьтеся з Microsoft CLA (автоматична перевірка при першому PR)
- Дотримуйтесь [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- Детальні інструкції у [CONTRIBUTING.md](./CONTRIBUTING.md)
- Вказуйте номери issue у описі PR при потребі
### Процес рев’ю
### Процес огляду
- PR переглядають мейнтейнер та спільнота
- Пріоритет — освітня зрозумілість
- Приклади коду повинні відповідати актуальним найкращим практикам
- Переклади перевіряють на точність та відповідність культурі
- PR переглядають мейнтейнер і спільнота
- Освітня ясність ставиться у пріоритет
- Приклади коду мають відповідати актуальним кращим практикам
- Переклади перевіряються на точність та культурну відповідність
## Система перекладів
### Автоматичний переклад
- Використовує GitHub Actions із workflow co-op-translator
- Автоматично перекладає більш ніж на 50 мов
- Джерельні файли у основних директоріях
- Перекладені файли у папках `translations/{language-code}/`
- Використовує GitHub Actions з workflow co-op-translator
- Автоматично перекладає на понад 50 мов
- Файли джерела у основних директоріях
- Перекладені файли у `translations/{language-code}/`
### Додавання ручних покращень перекладу
### Ручне покращення перекладів
1. Знайдіть файл у `translations/{language-code}/`
2. Вносьте покращення, зберігаючи структуру
3. Переконайтесь, що приклади коду залишаються працездатними
4. Перевірте будь-який локалізований контент вікторин
1. Знайдіть файл у `translations/{language-code}/`
2. Вносьте покращення, зберігаючи структуру
3. Переконайтеся, що приклади коду лишаються робочими
4. Тестуйте будь-який локалізований тестовий контент
### Метадані перекладу
Перекладені файли містять заголовок із метаданими:
Перекладені файли містять заголовок із метаданими:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -288,121 +288,121 @@ CO_OP_TRANSLATOR_METADATA:
}
-->
```
## Налагодження та усунення неполадок
### Поширені проблеми
**Quiz app не запускається**:
- Перевірте версію Node.js (рекомендується v14+)
- Видаліть `node_modules` і `package-lock.json`, виконайте `npm install` знову
- Перевірте конфлікти портів (за замовчуванням Vite використовує порт 5173)
**Quiz app не запускається**:
- Перевірте версію Node.js (рекомендовано v14+)
- Видаліть `node_modules` і `package-lock.json`, запустіть `npm install` знову
- Перевірте конфлікти портів (стандартний порт Vite — 5173)
**API сервер не запускається**:
- Переконайтесь, що версія Node.js відповідає мінімальній (node >=10)
- Перевірте, чи порт вже не зайнятий
- Переконайтесь, що всі залежності встановлені через `npm install`
**API сервер не запускається**:
- Переконайтеся, що версія Node.js відповідає мінімуму (node >=10)
- Перевірте, чи порт не зайнятий
- Переконайтеся, що всі залежності встановлені через `npm install`
**Розширення браузера не завантажується**:
- Переконайтесь, що manifest.json правильно сформатований
- Перевірте консоль браузера на помилки
- Дотримуйтесь інструкцій зі встановлення, специфічних для браузера
**Розширення браузера не завантажується**:
- Перевірте правильність формату manifest.json
- Перевірте в консолі браузера на наявність помилок
- Дотримуйтеся інструкцій установки специфічних для браузера
**Проблеми з Python чат-проектом**:
- Переконайтесь, що пакет OpenAI встановлений: `pip install openai`
- Переконайтесь, що змінна середовища GITHUB_TOKEN встановлена
- Перевірте права доступу GitHub Models
**Проблеми з Python чат-проектом**:
- Перевірте, що пакет OpenAI встановлено: `pip install openai`
- Переконайтеся, що встановлено змінну середовища GITHUB_TOKEN
- Перевірте права доступу до GitHub Models
**Docsify не подає документацію**:
- Встановіть docsify-cli глобально: `npm install -g docsify-cli`
- Запускайте з кореневого каталогу репозиторію
- Переконайтесь, що файл `docs/_sidebar.md` існує
**Docsify не подає документацію**:
- Встановіть docsify-cli глобально: `npm install -g docsify-cli`
- Запускайте з кореневої директорії репозиторію
- Переконайтеся, що існує `docs/_sidebar.md`
### Поради для середовища розробки
- Використовуйте VS Code з розширенням Live Server для HTML проектів
- Встановіть розширення ESLint та Prettier для консистентного форматування
- Використовуйте DevTools браузера для налагодження JavaScript
- Для Vue проектів встановіть розширення Vue DevTools для браузера
- Використовуйте VS Code з розширенням Live Server для HTML проектів
- Встановіть ESLint та Prettier для узгодженого форматування
- Використовуйте DevTools браузера для налагодження JavaScript
- Для Vue проектів встановіть розширення Vue DevTools браузера
### Особливості продуктивності
### Міркування щодо продуктивності
- Велика кількість перекладених файлів (50+ мов) робить повні клони великими
- Використовуйте shallow clone, якщо працюєте лише з контентом: `git clone --depth 1`
- Виключайте переклади з пошуку при роботі з англійською версією
- Процеси збірки можуть бути повільними при першому запуску (npm install, збірка Vite)
- Велика кількість перекладених файлів (50+ мов) збільшує розмір клонування
- Використовуйте швидке клонування, якщо працюєте лише з контентом: `git clone --depth 1`
- Виключайте переклади з пошуку при роботі з англійською версією
- Процеси збірки можуть бути повільними під час першого запуску (npm install, збірка Vite)
## Питання безпеки
## Міркування безпеки
### Змінні середовища
- API-ключі ніколи не повинні комітитись у репозиторій
- Використовуйте `.env` файли (вже в `.gitignore`)
- Документуйте необхідні змінні середовища в README проектів
- Ключі API ніколи не повинні потрапляти у репозиторій
- Використовуйте `.env` файли (вже в `.gitignore`)
- Документуйте потрібні змінні середовища у README проектів
### Python-проекти
### Python проектів
- Використовуйте віртуальні середовища: `python -m venv venv`
- Оновлюйте залежності
- Токени GitHub повинні мати мінімально необхідні дозволи
- Використовуйте віртуальні середовища: `python -m venv venv`
- Оновлюйте залежності
- GitHub токени повинні мати мінімальні необхідні дозволи
### Доступ GitHub Models
### Доступ до GitHub Models
- Потрібні персональні токени доступу (PAT) для GitHub Models
- Токени зберігайте у змінних середовища
- Ніколи не комітьте токени або облікові дані
- Для GitHub Models потрібні Personal Access Tokens (PAT)
- Токени треба зберігати як змінні середовища
- Ніколи не комітьте токени або облікові дані
## Додаткові нотатки
### Цільова аудиторія
- Повні початківці у веб-розробці
- Студенти та самонавчальні
- Викладачі, що використовують курикулум у класах
- Контент розроблений з урахуванням доступності та поступового нарощування навичок
- Повні початківці у веб-розробці
- Студенти та самонавчальні
- Вчителі, які використовують курс у класах
- Контент створений з урахуванням доступності та поступового розвитку навичок
### Освітня філософія
- Підхід на основі проектів
- Часті перевірки знань (вікторини)
- Практичні вправи з кодування
- Приклади з реального життя
- Акцент на основах перед фреймворками
- Навчання через проекти
- Часті перевірки знань (тести)
- Практичні вправи з кодування
- Приклади із реального світу
- Фокус на основах до вивчення фреймворків
### Підтримка репозиторію
- Активна спільнота учнів і контрибуторів
- Регулярні оновлення залежностей і контенту
- Моніторинг issues і дискусій мейнтейнерами
- Оновлення перекладів автоматизовані через GitHub Actions
- Активна спільнота учнів і контрибуторів
- Регулярні оновлення залежностей і контенту
- Моніторинг проблем та обговорень мейнтейнерами
- Автоматизація оновлень перекладів через GitHub Actions
### Пов’язані ресурси
- [Модулі Microsoft 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) рекомендований для учнів
- Додаткові курси: Generative AI, Data Science, ML, IoT curricula доступні
- [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) рекомендовано для учнів
- Додаткові курси: налаштування для Generative AI, Data Science, ML, IoT
### Робота з окремими проектами
### Робота з конкретними проектами
Для детальних інструкцій звертайтеся до README файлів у:
- `quiz-app/README.md` - Vue 3 додаток вікторин
- `7-bank-project/README.md` - Банківський додаток з автентифікацією
- `5-browser-extension/README.md` - Розробка розширень браузера
- `6-space-game/README.md` - Розробка гри на Canvas
- `9-chat-project/README.md` - Проект AI чат-асистента
Для детальних інструкцій щодо окремих проектів дивіться README файли у:
- `quiz-app/README.md` - додаток для тестування на Vue 3
- `7-bank-project/README.md` - банківський додаток з автентифікацією
- `5-browser-extension/README.md` - розробка розширень для браузера
- `6-space-game/README.md` - розробка гри з canvas
- `9-chat-project/README.md` - проект AI чат-асистента
### Структура монорепозиторію
Хоча це не традиційний монорепозиторій, він містить кілька незалежних проектів:
- Кожен урок автономний
- Проекти не розділяють залежності
- Працюйте з окремими проектами без впливу на інші
- Клонуйте весь репозиторій для повного досвіду курсу
Хоча це не традиційний монорепозиторій, він містить кілька незалежних проектів:
- Кожен урок є автономним
- Проекти не ділять залежності
- Працюйте над окремими проектами без впливу на інші
- Клонуйте увесь репозиторій для повного курсу
---
<!-- 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 -->
Loading…
Cancel
Save