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

pull/1793/head
localizeflow[bot] 4 weeks ago
parent 90fca12fcc
commit 74e656e6fb

@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-04-06T17:16:39+00:00",
"translation_date": "2026-04-20T15:45:36+00:00",
"source_file": "AGENTS.md",
"language_code": "bg"
},

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

@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-04-06T17:15:26+00:00",
"translation_date": "2026-04-20T15:44:09+00:00",
"source_file": "AGENTS.md",
"language_code": "ro"
},

@ -1,30 +1,30 @@
# AGENTS.md
## Prezentarea Proiectului
## Prezentare generală a proiectului
Acesta este un depozit de curriculum educațional pentru predarea fundamentelor dezvoltării web începătorilor. Curriculumul este un curs cuprinzător de 12 săptămâni dezvoltat de Microsoft Cloud Advocates, care include 24 de lecții practice ce acoperă JavaScript, CSS și HTML.
Acesta este un depozit curricular educațional pentru predarea elementelor fundamentale ale dezvoltării web începătorilor. Curriculumul este un curs cuprinzător de 12 săptămâni, dezvoltat de Microsoft Cloud Advocates, care include 24 de lecții practice acoperind JavaScript, CSS și HTML.
### Componente Cheie
### Componente cheie
- **Conținut Educațional**: 24 de lecții structurate organizate în module bazate pe proiecte
- **Proiecte Practice**: Terrarium, Joc de tastare, Extensie de browser, Joc spațial, Aplicație bancară, Editor de cod și Asistent de chat AI
- **Chestionare Interactive**: 48 chestionare cu câte 3 întrebări fiecare (evaluări înainte/după lecție)
- **Suport Multilingv**: Traduceri automate pentru peste 50 de limbi prin GitHub Actions
- **Conținut educațional**: 24 de lecții structurate organizate în module bazate pe proiecte
- **Proiecte practice**: Terrarium, Joc de tastare, Extensie pentru browser, Joc spațial, Aplicație bancară, Editor de cod și Asistent chat AI
- **Chestionare interactive**: 48 de chestionare cu câte 3 întrebări fiecare (evaluări pre/post-lecție)
- **Suport multi-limbă**: Traduceri automate pentru peste 50 de limbi prin GitHub Actions
- **Tehnologii**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (pentru proiectele AI)
### Arhitectură
- Depozit educațional cu structură bazată pe lecții
- Fiecare folder de lecție conține README, exemple de cod și soluții
- Proiecte independente în directoare separate (quiz-app, diverse proiecte de lecție)
- Proiecte autonome în directoare separate (quiz-app, diverse proiecte din lecții)
- Sistem de traducere folosind GitHub Actions (co-op-translator)
- Documentație servită prin Docsify și disponibilă ca PDF
- Documentația este servită prin Docsify și disponibilă ca PDF
## Comenzi de Configurare
## Comenzi de configurare
Acest depozit este destinat în principal consumului de conținut educațional. Pentru lucrul cu proiecte specifice:
Acest depozit este destinat în principal consumului de conținut educațional. Pentru a lucra cu proiecte specifice:
### Configurare Principală a Depozitului
### Configurare depozit principal
```bash
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
@ -37,7 +37,7 @@ cd Web-Dev-For-Beginners
cd quiz-app
npm install
npm run dev # Pornește serverul de dezvoltare
npm run build # Construiește pentru producție
npm run build # Compilează pentru producție
npm run lint # Rulează ESLint
```
@ -51,7 +51,7 @@ npm run lint # Rulează ESLint
npm run format # Formatează cu Prettier
```
### Proiecte Extensie Browser
### Proiecte Extensie de Browser
```bash
cd 5-browser-extension/solution
@ -67,7 +67,7 @@ npm install
# Deschide index.html în browser sau folosește Live Server
```
### Proiect Chat (Backend Python)
### Proiect Chat (backend Python)
```bash
cd 9-chat-project/solution/backend/python
@ -76,124 +76,124 @@ pip install openai
python api.py
```
## Flux de Dezvoltare
## Flux de dezvoltare
### Pentru Contribuitorii de Conținut
### Pentru contribuitori de conținut
1. **Furcați depozitul** în contul vostru GitHub
2. **Clonați furca** local
2. **Clonați furca local**
3. **Creați un nou branch** pentru modificările voastre
4. Faceți modificări în conținutul lecțiilor sau exemplele de cod
5. Testați orice modificare de cod în directoarele proiectelor relevante
6. Trimiteți pull requests respectând ghidul de contribuție
4. Faceți modificări la conținutul lecțiilor sau la exemplele de cod
5. Testați orice modificare de cod în directoarele relevante ale proiectului
6. Trimiteți pull request-uri respectând ghidul de contribuție
### Pentru Învățăcei
### Pentru cursanți
1. Fork sau clonați depozitul
2. Navigați secvențial în directoarele lecțiilor
1. Fork sau clonează depozitul
2. Navigați secvențial prin directoarele lecțiilor
3. Citiți fișierele README pentru fiecare lecție
4. Completați chestionarele pre-lectură la https://ff-quizzes.netlify.app/web/
4. Completați chestionarele pre-lecție la https://ff-quizzes.netlify.app/web/
5. Parcurgeți exemplele de cod din folderele lecțiilor
6. Finalizați temele și provocările
7. Susțineți chestionarele post-lectură
7. Susțineți chestionarele post-lecție
### Dezvoltare Live
- **Documentație**: Rulați `docsify serve` în rădăcină (port 3000)
- **Documentație**: Rulați `docsify serve` din rădăcină (port 3000)
- **Quiz App**: Rulați `npm run dev` în directorul quiz-app
- **Proiecte**: Folosiți extensia VS Code Live Server pentru proiectele HTML
- **Proiecte API**: Rulați `npm start` în directoarele API corespunzătoare
- **Proiecte API**: Rulați `npm start` în directoarele API relevante
## Instrucțiuni de Testare
## Instrucțiuni de testare
### Testare Quiz App
```bash
cd quiz-app
npm run lint # Verifică problemele de stil al codului
npm run lint # Verifică problemele de stil ale codului
npm run build # Verifică dacă compilarea reușește
```
### Testare API Bancar
### Testare Bank API
```bash
cd 7-bank-project/api
npm run lint # Verifică problemele de stil ale codului
npm run lint # Verifica problemele de stil de cod
node server.js # Verifică dacă serverul pornește fără erori
```
### Abordare Generală de Testare
### Abordare generală a testării
- Este un depozit educațional fără teste automate cuprinzătoare
- Acesta este un depozit educațional fără teste automate complete
- Testarea manuală se concentrează pe:
- Exemplele de cod rulează fără erori
- Linkurile din documentație funcționează corect
- Proiectele se construiesc cu succes
- Exemplele respectă bunele practici
- Exemplele de cod să ruleze fără erori
- Linkurile din documentație să funcționeze corect
- Construirea proiectelor să fie finalizată cu succes
- Exemplele să respecte cele mai bune practici
### Verificări Pre-trimitere
### Verificări înainte de trimitere
- Rulați `npm run lint` în directoarele cu package.json
- Verificați validitatea linkurilor markdown
- Testați exemplele de cod în browser sau Node.js
- Verificați dacă linkurile markdown sunt valide
- Testați exemplele de cod în browser sau în Node.js
- Asigurați-vă că traducerile păstrează structura corectă
## Ghid de Stil pentru Cod
## Ghid de stil pentru cod
### JavaScript
- Folosiți sintaxa modernă ES6+
- Respectați configurațiile standard ESLint din proiecte
- Utilizați nume semnificative pentru variabile și funcții pentru claritate educațională
- Adăugați comentarii explicative pentru învățăcei
- Formatați cu Prettier unde este configurat
- Respectați configurațiile standard ESLint oferite în proiecte
- Utilizați nume de variabile și funcții semnificative pentru claritate educațională
- Adăugați comentarii explicative pentru cursanți
- Formatați folosind Prettier acolo unde este configurat
### HTML/CSS
- Elemente semantice HTML5
- Principii de design responsive
- Convenții clare de denumire a claselor
- Comentarii explicative pentru tehnici CSS pentru învățare
- Comentarii care explică tehnicile CSS pentru cursanți
### Python
- Respectați ghidul de stil PEP 8
- Exemple de cod clare, educaționale
- Hinturi de tip unde sunt utile pentru învățare
- Respectați ghidurile de stil PEP 8
- Exemple de cod clare și educaționale
- Indicații de tip unde sunt utile pentru învățare
### Documentație Markdown
- Ierarhie clară a titlurilor
- Blocuri de cod cu specificare de limbaj
- Blocuri de cod cu specificație de limbaj
- Linkuri către resurse suplimentare
- Capturi de ecran și imagini în directoarele `images/`
- Text alternativ pentru imagini pentru accesibilitate
### Organizarea Fișierelor
### Organizarea fișierelor
- Lecțiile numerotate secvențial (1-getting-started-lessons, 2-js-basics, etc.)
- Fiecare proiect are directoare `solution/` și de obicei `start/` sau `your-work/`
- Imaginile stocate în foldere `images/` specifice lecțiilor
- Lecțiile numerotate secvențial (1-getting-started-lessons, 2-js-basics etc.)
- Fiecare proiect are directoare `solution/` și adesea `start/` sau `your-work/`
- Imaginile sunt stocate în foldere specifice lecțiilor `images/`
- Traducerile în structura `translations/{language-code}/`
## Construire și Deploy
## Build și implementare
### Deploy Quiz App (Azure Static Web Apps)
### Implementarea Quiz App (Azure Static Web Apps)
quiz-app este configurat pentru deploy pe Azure Static Web Apps:
quiz-app este configurat pentru implementarea pe Azure Static Web Apps:
```bash
cd quiz-app
npm run build # Creează folderul dist/
# Implementare prin workflow GitHub Actions la push pe main
# Face deploy prin workflow-ul GitHub Actions la push în main
```
Configurare Azure Static Web Apps:
- **Locația aplicației**: `/quiz-app`
- **Locația output-ului**: `dist`
- **Locația de output**: `dist`
- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Generare PDF Documentație
### Generarea PDF documentație
```bash
npm install # Instalează docsify-to-pdf
@ -203,80 +203,80 @@ npm run convert # Generează PDF din docs
### Documentație Docsify
```bash
npm install -g docsify-cli # Instalează Docsify global
npm install -g docsify-cli # Instalează Docsify la nivel global
docsify serve # Servește pe localhost:3000
```
### Build-uri Specifice Proiectului
### Build-uri specifice proiectelor
Fiecare director de proiect poate avea propriul proces de build:
- Proiecte Vue: `npm run build` creează bundle-uri de producție
- Proiecte statice: Fără pas de build, servește fișierele direct
- Proiecte Vue: `npm run build` creează pachete de producție
- Proiecte statice: Fără pas de build, se servesc fișierele direct
## Ghid pentru Pull Request-uri
## Ghid pentru pull request-uri
### Formatul Titlului
### Formatul titlului
Folosiți titluri clare și descriptive care indică zona de schimbare:
- `[Quiz-app] Adaugă un nou chestionar pentru lecția X`
- `[Lesson-3] Corectează o greșeală din proiectul terrarium`
- `[Translation] Adaugă traducerea în spaniolă pentru lecția 5`
- `[Docs] Actualizează instrucțiunile de configurare`
Folosiți titluri clare și descriptive care indică zona de modificare:
- `[Quiz-app] Adaugă chestionar nou pentru lecția X`
- `[Lesson-3] Corectează greșeală de scriere în proiectul terrarium`
- `[Translation] Adaugă traducere în spaniolă pentru lecția 5`
- `[Docs] Actualizează instrucțiuni de configurare`
### Verificările Necesare
### Verificări obligatorii
Înainte de a trimite un PR:
1. **Calitatea Codului**:
1. **Calitatea codului**:
- Rulați `npm run lint` în directoarele proiectului afectat
- Remediați toate erorile și avertismentele lint
2. **Verificarea Build-ului**:
- Rulați `npm run build` dacă este aplicabil
- Asigurați-vă că nu există erori la build
2. **Verificarea build-ului**:
- Rulați `npm run build` dacă este cazul
- Asigurați-vă că nu apar erori în build
3. **Validarea Linkurilor**:
3. **Validarea linkurilor**:
- Testați toate linkurile markdown
- Verificați referințele imaginilor
- Verificați referințele imaginilor funcționează
4. **Revizuire Conținut**:
4. **Revizuirea conținutului**:
- Corectați ortografia și gramatica
- Asigurați corectitudinea și valoarea educațională a exemplelor de cod
- Verificați că traducerile păstrează sensul original
- Asigurați-vă că exemplele de cod sunt corecte și educaționale
- Verificați dacă traducerile păstrează sensul original
### Cerințe pentru Contribuție
### Cerințe pentru contribuții
- Acceptați Microsoft CLA (verificare automată la primul PR)
- Urmați [Codul de conduită Microsoft Open Source](https://opensource.microsoft.com/codeofconduct/)
- Consultați [CONTRIBUTING.md](./CONTRIBUTING.md) pentru ghiduri detaliate
- Referiți numerele de issue în descrierea PR-ului dacă este cazul
- Acceptați CLA Microsoft (verificare automată la primul PR)
- Respectați [Codul de conduită Microsoft Open Source](https://opensource.microsoft.com/codeofconduct/)
- Consultați [CONTRIBUTING.md](./CONTRIBUTING.md) pentru detalii
- Referiți numerele issue-urilor în descrierea PR-ului, dacă este cazul
### Procesul de Revizuire
### Procesul de revizuire
- PR-urile sunt revizuite de menținători și comunitate
- Claritatea educațională este prioritară
- Exemplele de cod ar trebui să urmeze cele mai bune practici curente
- Traducerile sunt revizuite pentru corectitudine și potrivire culturală
- PR-urile sunt revizuite de mentori și comunitate
- Prioritate pentru claritatea educațională
- Exemplele de cod trebuie să urmeze cele mai bune practici actuale
- Traducerile sunt verificate pentru acuratețe și adaptare culturală
## Sistemul de Traducere
## Sistem de traducere
### Traducere Automată
### Traducere automată
- Folosește GitHub Actions cu workflow co-op-translator
- Traduce automat în peste 50 de limbi
- Fișierele sursă în directoare principale
- Fișierele traduse în directoarele `translations/{language-code}/`
- Fișiere sursă în directoarele principale
- Fișiere traduse în directoarele `translations/{language-code}/`
### Adăugarea Îmbunătățirilor Manuale de Traducere
### Adăugarea îmbunătățirilor manuale
1. Localizați fișierul în `translations/{language-code}/`
1. Găsiți fișierul în `translations/{language-code}/`
2. Faceți îmbunătățiri păstrând structura
3. Asigurați-vă că exemplele de cod rămân funcționale
4. Testați orice conținut localizat pentru chestionare
4. Testați eventualele conținuturi locale din chestionare
### Metadate ale Traducerii
### Metadate traducere
Fișierele traduse includ un antet cu metadate:
Fișierele traduse includ antet cu metadate:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -289,54 +289,54 @@ CO_OP_TRANSLATOR_METADATA:
-->
```
## Depanare și Rezolvare Probleme
## Depanare și rezolvarea problemelor
### Probleme Comune
### Probleme comune
**Quiz app nu pornește**:
- Verificați versiunea Node.js (recomandat v14+)
- Ștergeți `node_modules` și `package-lock.json`, rulați din nou `npm install`
- Verificați conflictele de port (implicit: Vite folosește portul 5173)
- Ștergeți `node_modules` și `package-lock.json`, rulați iar `npm install`
- Verificați conflictele de port (implict: Vite folosește portul 5173)
**Serverul API nu pornește**:
- Verificați dacă versiunea Node.js este minimă (node >=10)
- Verificați dacă portul este deja ocupat
- Asigurați-vă că toate dependențele sunt instalate cu `npm install`
- Asigurați-vă că versiunea Node.js este minim node >=10
- Verificați dacă portul este ocupat
- Verificați că toate dependențele sunt instalate cu `npm install`
**Extensia de browser nu se încarcă**:
- Verificați dacă manifest.json este formatat corect
- Verificați consola browser-ului pentru erori
- Verificați formatul corect al manifest.json
- Consultați consola browserului pentru erori
- Urmați instrucțiunile specifice browserului pentru instalarea extensiei
**Probleme cu proiectul chat Python**:
**Probleme proiect chat Python**:
- Asigurați-vă că pachetul OpenAI este instalat: `pip install openai`
- Verificați dacă variabila de mediu GITHUB_TOKEN este setată
- Verificați permisiunile de acces la GitHub Models
**Docsify nu servește documentația**:
- Instalați docsify-cli global: `npm install -g docsify-cli`
- Instalați global docsify-cli: `npm install -g docsify-cli`
- Rulați din directorul rădăcină al depozitului
- Verificați dacă `docs/_sidebar.md` există
- Verificați existența fișierului `docs/_sidebar.md`
### Sfaturi pentru Mediul de Dezvoltare
### Sfaturi pentru mediul de dezvoltare
- Folosiți VS Code cu extensia Live Server pentru proiectele HTML
- Instalați extensiile ESLint și Prettier pentru formatare uniformă
- Utilizați DevTools în browser pentru depanarea JavaScript
- Pentru proiectele Vue, instalați extensia Vue DevTools în browser
- Instalați extensiile ESLint și Prettier pentru formatare consistentă
- Folosiți DevTools ale browserului pentru depanarea JavaScript
- Pentru proiecte Vue, instalați extensia Vue DevTools în browser
### Considerații de Performanță
### Considerații de performanță
- Numărul mare de fișiere traduse (peste 50 de limbi) face clonările complete mari
- Folosiți clonare superficială dacă lucrați doar cu conținutul: `git clone --depth 1`
- Excludeți traducerile din căutări când lucrați cu conținutul în engleză
- Numărul mare de fișiere traduse (50+ limbi) face clonările totale mari
- Folosiți clonarea superficială dacă lucrați doar pe conținut: `git clone --depth 1`
- Excludeți traducerile din căutări când lucrați pe conținut în engleză
- Procesele de build pot fi lente la prima rulare (npm install, build Vite)
## Considerații de Securitate
## Considerații de securitate
### Variabile de Mediu
### Variabile de mediu
- Cheile API nu trebuie niciodată păstrate în depozit
- Cheile API nu trebuie niciodată comise în depozit
- Folosiți fișiere `.env` (deja în `.gitignore`)
- Documentați variabilele de mediu necesare în README-urile proiectelor
@ -348,61 +348,61 @@ CO_OP_TRANSLATOR_METADATA:
### Acces GitHub Models
- Sunt necesare Personal Access Tokens (PAT) pentru GitHub Models
- Token-urile trebuie stocate ca variabile de mediu
- Nu comiteți niciodată token-urile sau acreditările
- Sunt necesare token-uri personale de acces (PAT) pentru GitHub Models
- Token-urile trebuie păstrate ca variabile de mediu
- Nu comiteți niciodată token-uri sau credențiale
## Note Suplimentare
## Note suplimentare
### Public Țintă
### Public țintă
- Începători compleți în dezvoltarea web
- Începători compleți în dezvoltare web
- Studenți și autodidacți
- Profesori care folosesc curriculumul în sălile de clasă
- Conținut conceput pentru accesibilitate și dezvoltare graduală a abilităților
- Profesori care folosesc curriculumul în săli de clasă
- Conținut gândit pentru accesibilitate și dezvoltare graduală a competențelor
### Filosofia Educațională
### Filosofie educațională
- Abordare bazată pe învățare prin proiecte
- Abordare bazată pe proiecte
- Verificări frecvente ale cunoștințelor (chestionare)
- Exerciții practice de programare
- Exemple de aplicații din lumea reală
- Accent pe fundament înainte de framework-uri
- Exerciții practice de codare
- Exemple aplicate din lumea reală
- Accent pe elementele fundamentale înaintea framework-urilor
### Mentenanță Depozit
### Mentenanță depozit
- Comunitate activă de învățăcei și contribuitori
- Comunitate activă de cursanți și contribuitori
- Actualizări regulate ale dependențelor și conținutului
- Probleme și discuții monitorizate de menținători
- Actualizări ale traducerilor automatizate prin GitHub Actions
- Probleme și discuții monitorizate de mentori
- Actualizări automate ale traducerilor prin GitHub Actions
### Resurse Asociate
### Resurse conexe
- [Module Microsoft Learn](https://docs.microsoft.com/learn/)
- [Resurse Student Hub](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) recomandat pentru învățăcei
- Cursuri suplimentare: AI Generativ, Știința Datelor, ML, curricula IoT disponibile
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) recomandat pentru cursanți
- Cursuri suplimentare: AI Generativ, Știința datelor, ML, curricula IoT disponibile
### Lucrul cu Proiecte Specifice
### Lucrul cu proiecte specifice
Pentru instrucțiuni detaliate despre proiecte individuale, consultați fișierele README în:
- `quiz-app/README.md` - Aplicație quiz Vue 3
- `7-bank-project/README.md` - Aplicație bancară cu autentificare
- `5-browser-extension/README.md` - Dezvoltare extensie browser
- `6-space-game/README.md` - Dezvoltare joc canvas
- `9-chat-project/README.md` - Proiect asistent chat AI
Pentru instrucțiuni detaliate despre proiectele individuale, consultați fișierele README din:
- `quiz-app/README.md` - aplicație quiz Vue 3
- `7-bank-project/README.md` - aplicație bancară cu autentificare
- `5-browser-extension/README.md` - dezvoltarea extensiilor pentru browser
- `6-space-game/README.md` - dezvoltarea jocurilor canvas
- `9-chat-project/README.md` - proiect asistent chat AI
### Structura Monorepo
### Structura monorepo
Deși nu este un monorepo tradițional, acest depozit conține mai multe proiecte independente:
- Fiecare lecție este auto-suficientă
- Fiecare lecție este autonomă
- Proiectele nu împart dependențe
- Se poate lucra pe proiecte individuale fără a afecta altele
- Clonați întregul depozit pentru experiența completă a curriculumului
- Lucrați pe proiectele individuale fără a afecta altele
- Clonați întregul repo pentru experiența completă a curriculumului
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Declinare a responsabilității**:
Acest document a fost tradus folosind serviciul de traducere AI [Co-op Translator](https://github.com/Azure/co-op-translator). Deși ne străduim să asigurăm acuratețea, vă rugăm să rețineți că traducerile automate pot conține erori sau inexactități. Documentul original în limba sa nativă ar trebui considerat sursa autoritară. Pentru informații critice, se recomandă traducerea profesională efectuată de un specialist uman. Nu ne asumăm responsabilitatea pentru eventualele neînțelegeri sau interpretări greșite rezultate din utilizarea acestei traduceri.
**Declinare a responsabilității**:
Acest document a fost tradus folosind serviciul de traducere AI [Co-op Translator](https://github.com/Azure/co-op-translator). Deși ne străduim pentru acuratețe, vă rugăm să rețineți că traducerile automate pot conține erori sau inexactități. Documentul original în limba sa nativă trebuie considerat sursa autoritară. Pentru informații critice, se recomandă traducerea profesională realizată de o persoană. Nu ne asumăm responsabilitatea pentru eventuale neînțelegeri sau interpretări greșite rezultate din utilizarea acestei traduceri.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -493,7 +493,7 @@
},
"AGENTS.md": {
"original_hash": "a362efd06d64d4134a0cfe8515a86d34",
"translation_date": "2026-04-06T17:14:17+00:00",
"translation_date": "2026-04-20T15:42:57+00:00",
"source_file": "AGENTS.md",
"language_code": "sk"
},

@ -2,29 +2,29 @@
## Prehľad projektu
Toto je vzdelávacie úložisko učebného plánu na výučbu základov webového vývoja pre začiatočníkov. Učebný plán je komplexný 12-týždňový kurz vyvinutý Microsoft Cloud Advocates, obsahujúci 24 praktických lekcií pokrývajúcich JavaScript, CSS a HTML.
Toto je vzdelávací repozitár pre výučbu základov webového vývoja pre začiatočníkov. Kurz je komplexný 12-týždňový program vyvinutý Microsoft Cloud Advocates, obsahujúci 24 praktických lekcií pokrývajúcich JavaScript, CSS a HTML.
### Kľúčové komponenty
- **Vzdelávací obsah**: 24 štruktúrovaných lekcií organizovaných do modulov založených na projektoch
- **Praktické projekty**: Terrarium, Typing Game, Browser Extension, Space Game, Banking App, Code Editor a AI Chat Assistant
- **Interaktívne kvízy**: 48 kvízov s 3 otázkami každý (pred a po lekcii)
- **Podpora viacerých jazykov**: Automatické preklady do 50+ jazykov cez GitHub Actions
- **Vzdelávací obsah**: 24 štruktúrovaných lekcií usporiadaných do modulov založených na projektoch
- **Praktické projekty**: Terrárium, Hra na písanie, Rozšírenie prehliadača, Vesmírna hra, Banková aplikácia, Code Editor a AI Chat Asistent
- **Interaktívne kvízy**: 48 kvízov s 3 otázkami v každom (pred/po lekcii)
- **Podpora viacerých jazykov**: Automatizované preklady do 50+ jazykov cez GitHub Actions
- **Technológie**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (pre AI projekty)
### Architektúra
- Vzdelávacie úložisko so štruktúrou založenou na lekciách
- Vzdelávací repozitár so štruktúrou založenou na lekciách
- Každý priečinok lekcie obsahuje README, ukážky kódu a riešenia
- Samostatné projekty v oddelených adresároch (quiz-app, rôzne projekty lekcií)
- Prekladový systém využívajúci GitHub Actions (co-op-translator)
- Dokumentácia servírovaná cez Docsify a dostupná aj vo formáte PDF
- Dokumentácia podávaná cez Docsify a dostupná ako PDF
## Príkazy na nastavenie
Toto úložisko je primárne určené na konzumáciu vzdelávacieho obsahu. Pre prácu s konkrétnymi projektmi:
Tento repozitár je primárne na konzumáciu vzdelávacieho obsahu. Pre prácu s konkrétnymi projektmi:
### Nastavenie hlavného úložiska
### Nastavenie hlavného repozitára
```bash
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
@ -37,18 +37,18 @@ cd Web-Dev-For-Beginners
cd quiz-app
npm install
npm run dev # Spustiť vývojový server
npm run build # Vytvoriť build pre produkciu
npm run build # Vytvoriť pre produkciu
npm run lint # Spustiť ESLint
```
### Bank API projektu (Node.js + Express)
### API Bankového projektu (Node.js + Express)
```bash
cd 7-bank-project/api
npm install
npm start # Spustiť API server
npm run lint # Spustiť ESLint
npm run format # Formátovať pomocou Prettier
npm run format # Naformátovať pomocou Prettier
```
### Projekty rozšírenia prehliadača
@ -56,10 +56,10 @@ npm run format # Formátovať pomocou Prettier
```bash
cd 5-browser-extension/solution
npm install
# Dodržiavajte pokyny na načítanie rozšírení špecifické pre prehliadač
# Postupujte podľa pokynov na načítanie rozšírenia špecifických pre prehliadač
```
### Projekty Space Game
### Projekty vesmírnej hry
```bash
cd 6-space-game/solution
@ -67,7 +67,7 @@ npm install
# Otvorte index.html v prehliadači alebo použite Live Server
```
### Chat projekt (Python backend)
### Projekt Chat (Python Backend)
```bash
cd 9-chat-project/solution/backend/python
@ -76,26 +76,26 @@ pip install openai
python api.py
```
## Vývojový pracovný postup
## Vývojový proces
### Pre prispievateľov obsahu
1. **Vytvorte fork úložiska** do svojho GitHub účtu
2. **Naklonujte si svoj fork** lokálne
3. **Vytvorte novú vetvu** pre vaše zmeny
4. Urobte zmeny v obsahu lekcií alebo ukážkach kódu
5. Testujte akékoľvek zmeny kódu v príslušných projektových adresároch
6. Odosielajte pull requesty podľa pokynov pre prispievanie
1. **Forknite repozitár** do svojho GitHub účtu
2. **Skloňujte svoj fork** lokálne
3. **Vytvorte novú vetvu** pre svoje zmeny
4. Robte zmeny v obsahu lekcií alebo príkladoch kódu
5. Testujte akékoľvek zmeny kódu v relevantných projektových adresároch
6. Podajte pull request podľa pravidiel prispievania
### Pre študentov
1. Forknite alebo naklonujte úložisko
1. Forknite alebo naklonujte repozitár
2. Postupne prechádzajte adresáre lekcií
3. Čítajte README súbory ku každej lekcii
4. Vyplňujte predlekčné kvízy na https://ff-quizzes.netlify.app/web/
5. Prechádzajte príklady kódu v adresároch lekcií
6. Splňte zadania a výzvy
7. Vyplňujte po- lekčné kvízy
3. Čítajte README súbory pre každú lekciu
4. Vyplňte pre-lekčné kvízy na https://ff-quizzes.netlify.app/web/
5. Prejdite si príklady kódu v adresároch lekcií
6. Dokončite úlohy a výzvy
7. Absolvujte po-lekčné kvízy
### Živý vývoj
@ -111,7 +111,7 @@ python api.py
```bash
cd quiz-app
npm run lint # Skontrolujte problémy so štýlom kódu
npm run build # Overte, či zostavenie prebehlo úspešne
npm run build # Overte, či zostavenie prebehne úspešne
```
### Testovanie Bank API
@ -124,59 +124,59 @@ node server.js # Overte, či server štartuje bez chýb
### Všeobecný prístup k testovaniu
- Ide o vzdelávacie úložisko bez komplexných automatizovaných testov
- Ide o vzdelávací repozitár bez komplexných automatizovaných testov
- Manuálne testovanie sa zameriava na:
- Ukážky kódu bežia bez chýb
- Odkazy v dokumentácii fungujú správne
- Projekty sa úspešne zostavujú
- Príklady dodržiavajú najlepšie postupy
- Príklady kódu bez chýb
- Funkčnosť odkazov v dokumentácii
- Úspešnosť buildov projektov
- Dodržiavanie najlepších praktík v príkladoch
### Kontroly pred odoslaním
- Spustite `npm run lint` v adresároch s package.json
- Overte platnosť markdown odkazov
- Testujte príklady kódu v prehliadači alebo Node.js
- Skontrolujte, že preklady zachovávajú správnu štruktúru
- Skontrolujte, či preklady zachovávajú správnu štruktúru
## Pravidlá pre štýl kódu
## Pravidlá štýlu kódu
### JavaScript
- Používajte moderný ES6+ syntax
- Dodržiavajte štandardné ESLint konfigurácie v projektoch
- Používajte zrozumiteľné názvy premenných a funkcií pre jasnosť výučby
- Používajte zrozumiteľné názvy premenných a funkcií pre vzdelávaciu jasnosť
- Pridávajte komentáre vysvetľujúce koncepty pre študentov
- Formátujte kód pomocou Prettier, kde je to nakonfigurované
- Formátujte kód pomocou Prettier kde je nastavený
### HTML/CSS
- Semantické HTML5 prvky
- Zásady responzívneho dizajnu
- Jasné pomenovávanie tried
- Principy responzívneho dizajnu
- Čisté pomenovanie tried
- Komentáre vysvetľujúce CSS techniky pre študentov
### Python
- Štýl podľa PEP 8
- Štýlové pravidlá PEP 8
- Jasné, vzdelávacie príklady kódu
- Type hints kde sú užitočné pre učenie
- Typové anotácie tam, kde pomáhajú pri učení
### Markdown dokumentácia
- Jasná hierarchia nadpisov
- Bloky kódu so špecifikovaným jazykom
- Odkazy na ďalšie zdroje
- Kódové bloky s určením jazyka
- Odkazy na doplnkové zdroje
- Snímky obrazovky a obrázky v adresároch `images/`
- Alt text pre obrázky z dôvodu prístupnosti
- Alt text pre obrázky pre prístupnosť
### Organizácia súborov
- Lekcie číslované postupne (1-getting-started-lessons, 2-js-basics, atď.)
- Každý projekt má adresáre `solution/` a často `start/` alebo `your-work/`
- Obrázky uložené v lekciách špecifických `images/` priečinkoch
- Preklady v štruktúre `translations/{jazykový-kód}/`
- Obrázky uložené v špecifických priečinkoch lekcií `images/`
- Preklady v štruktúre `translations/{language-code}/`
## Sestavenie a nasadenie
## Build a nasadenie
### Nasadenie Quiz App (Azure Static Web Apps)
@ -190,73 +190,73 @@ npm run build # Vytvára priečinok dist/
Konfigurácia Azure Static Web Apps:
- **Umiestnenie aplikácie**: `/quiz-app`
- **Výstupné umiestnenie**: `dist`
- **Výstupné miesto**: `dist`
- **Workflow**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
### Generovanie PDF dokumentácie
```bash
npm install # Inštalovať docsify-to-pdf
npm run convert # Generovať PDF z docs
npm install # Inštalujte docsify-to-pdf
npm run convert # Vygenerujte PDF z docs
```
### Dokumentácia Docsify
### Dokumentácia cez Docsify
```bash
npm install -g docsify-cli # Nainštalujte Docsify globálne
docsify serve # Spustiť na localhost:3000
docsify serve # Spustite na localhost:3000
```
### Špecifické zostavenia projektu
### Buildy špecifické pre projekt
Každý projekt môže mať vlastný build proces:
Každý projektový adresár môže mať svoj vlastný build proces:
- Vue projekty: `npm run build` vytvára produkčné balíky
- Statické projekty: Žiadny build krok, súbory sa servírujú priamo
- Statické projekty: žiadny build krok, súbory sa servujú priamo
## Pokyny pre pull requesty
## Pravidlá pre pull requesty
### Formát názvu
### Formát názvov
Používajte jasné, popisné názvy indikujúce oblasť zmeny:
Používajte jasné a popisné názvy, ktoré indikujú oblasť zmeny:
- `[Quiz-app] Pridanie nového kvízu pre lekciu X`
- `[Lesson-3] Oprava preklepu v projekte terrarium`
- `[Translation] Pridanie španielskeho prekladu pre lekciu 5`
- `[Docs] Aktualizácia inštrukcií na nastavenie`
### Požadované kontroly
### Povinné kontroly
Pred odoslaním PR:
Pred podaním PR:
1. **Kvalita kódu**:
- Spustite `npm run lint` v zasiahnutých projektových adresároch
- Opravte všetky lint chyby a varovania
- Spustite `npm run lint` v dotknutých projektových adresároch
- Opravte všetky linting chyby a varovania
2. **Overenie build-u**:
- Spustite `npm run build` ak je to relevant
- Zabezpečte, že nie sú žiadne build chyby
2. **Overenie build procesu**:
- Spustite `npm run build` ak je to potreb
- Zabezpečte, že neexistujú chyby pri buildovaní
3. **Validácia odkazov**:
- Otestujte všetky markdown odkazy
- Overte funkčnosť obrázkových referencií
- Overte funkčnosť referencií obrázkov
4. **Kontrola obsahu**:
- Korektúra pravopisu a gramatiky
- Overenie správnosti a vzdelávacej hodnoty príkladov kódu
- Overenie, že preklady zachovávajú pôvodný význam
- Korektúra pravopisných a gramatických chýb
- Overte správnosť a vzdelávací charakter príkladov kódu
- Skontrolujte, či preklady zachovávajú pôvodný význam
### Požiadavky na príspevky
- Súhlas so zmluvou Microsoft CLA (automatická kontrola pri prvom PR)
- Dodržiavanie [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- Pozrite [CONTRIBUTING.md](./CONTRIBUTING.md) pre podrobné pokyny
- Referencujte čísla issue v popise PR, ak je to relevantné
- Súhlas s Microsoft CLA (automatická kontrola pri prvom PR)
- Dodržiavanie [Microsoft Open Source Kódexu správania](https://opensource.microsoft.com/codeofconduct/)
- Viac informácií v [CONTRIBUTING.md](./CONTRIBUTING.md)
- Pri PR uvádzať čísla issues, ak sú relevantné
### Proces recenzie
- PR sú recenzované správcami a komunitou
- Prioritizuje sa vzdelávacia jasnosť
- Ukážky kódu by mali sledovať aktuálne najlepšie postupy
- Preklady sa kontrolujú na presnosť a kultúrnu vhodnosť
- PR sú kontrolované správcami a komunitou
- Priorita na vzdelávaciu jasnosť
- Príklady kódu musia dodržiavať aktuálne najlepšie praktiky
- Preklady recenzované na presnosť a kultúrnu vhodnosť
## Prekladový systém
@ -265,18 +265,18 @@ Pred odoslaním PR:
- Používa GitHub Actions s workflow co-op-translator
- Automaticky prekladá do 50+ jazykov
- Zdrojové súbory v hlavných adresároch
- Preložené súbory v adresároch `translations/{jazykový-kód}/`
- Preložené súbory v adresároch `translations/{language-code}/`
### Pridávanie manuálnych vylepšení prekladu
1. Nájdite súbor v `translations/{jazykový-kód}/`
2. Urobte vylepšenia pri zachovaní štruktúry
3. Zabezpečte, že príklady kódu sú funkčné
4. Otestujte lokalizovaný obsah kvízov
1. Nájdite súbor v `translations/{language-code}/`
2. Vylepšujte obsah so zachovaním štruktúry
3. Zaistite, aby príklady kódu boli funkčné
4. Otestujte lokalizovaný kvízový obsah
### Metaúdaje prekladu
Preložené súbory obsahujú metaúdajový hlavičkový blok:
Preložené súbory obsahujú metaúdajový hlavok:
```markdown
<!--
CO_OP_TRANSLATOR_METADATA:
@ -295,114 +295,114 @@ CO_OP_TRANSLATOR_METADATA:
**Quiz app sa nespustí**:
- Skontrolujte verziu Node.js (odporúčané v14+)
- Vymažte `node_modules` a `package-lock.json`, spustite `npm install` znova
- Skontrolujte konflikty portov (predvolený: Vite používa port 5173)
- Vymažte `node_modules` a `package-lock.json`, znova spustite `npm install`
- Skontrolujte konflikty portov (predvolené: Vite používa port 5173)
**API server sa nespustí**:
- Overte, či verzia Node.js spĺňa minimum (node >=10)
- Overte, že verzia Node.js je minimálne node >=10
- Skontrolujte, či port nie je už obsadený
- Uistite sa, že sú nainštalované všetky závislosti cez `npm install`
- Uistite sa, že všetky závislosti sú nainštalované cez `npm install`
**Rozšírenie prehliadača sa nenačíta**:
- Skontrolujte správne formátovanie manifest.json
- Skontrolujte konzolu prehliadača na chyby
- Postupujte podľa inštrukcií pre inštaláciu rozšírenia v konkrétnom prehliadači
- Skontrolujte správne naformátovanie manifest.json
- Prehliadačový konzolový výstup pre chyby
- Postupujte podľa inštrukcií inštalácie podľa prehliadača
**Problémy s Python chat projektom**:
- Uistite sa, že balík OpenAI je nainštalovaný: `pip install openai`
- Overte, že premenná prostredia GITHUB_TOKEN je nastavená
- Skontrolujte povolenia na prístup ku GitHub Models
- Skontrolujte inštaláciu balíčka OpenAI: `pip install openai`
- Overte nastavenie premennej prostredia GITHUB_TOKEN
- Skontrolujte oprávnenia prístupu k GitHub modelom
**Docsify neservíruje dokumentáciu**:
- Nainštalujte docsify-cli globálne: `npm install -g docsify-cli`
- Spustite z koreňového adresára úložiska
- Overte, že existuje `docs/_sidebar.md`
- Spusťte príkaz v koreňovom adresári repozitára
- Skontrolujte, že existuje `docs/_sidebar.md`
### Tipy pre vývojové prostredie
- Používajte VS Code s rozšírením Live Server pre HTML projekty
- Nainštalujte rozšírenia ESLint a Prettier pre konzistentné formátovanie
- Používajte DevTools v prehliadači na ladenie JavaScriptu
- Používajte VS Code s Live Server rozšírením pre HTML projekty
- Nainštalujte ESLint a Prettier rozšírenia pre konzistentné formátovanie
- Použite DevTools v prehliadači na ladenie JavaScriptu
- Pre Vue projekty nainštalujte Vue DevTools rozšírenie prehliadača
### Výkonové úvahy
### Výkonnostné aspekty
- Veľké množstvo preložených súborov (50+ jazykov) znamená veľké klony
- Používajte shallow clone pri práci len s obsahom: `git clone --depth 1`
- Vylúčte preklady z vyhľadávania pri práci na anglickom obsahu
- Veľký počet prekladových súborov (50+ jazykov) robí kompletné klony veľkými
- Pre prácu len s obsahom použite plytký klon: `git clone --depth 1`
- Vylúčte preklady z vyhľadávania pri práci s anglickým obsahom
- Build procesy môžu byť pomalé pri prvom spustení (npm install, Vite build)
## Bezpečnostné úvahy
## Bezpečnostné aspekty
### Premenné prostredia
- API kľúče nikdy neukladajte do úložiska
- Používajte `.env` súbory (už v `.gitignore`)
- Dokumentujte potrebné premenné prostredia v README projektov
- API kľúče nikdy neukladajte do repozitára
- Používajte `.env` súbory (už zahrnuté v `.gitignore`)
- Požadované premenné prostredia dokumentujte v README projektov
### Python projekty
- Používajte virtuálne prostredia: `python -m venv venv`
- Udržiavajte závislosti aktualizované
- GitHub tokeny by mali mať minimálne potrebné oprávnenia
- Udržiavajte závislosti aktuálne
- GitHub tokeny majte s minimálnymi potrebnými právami
### Prístup k GitHub Models
### Prístup k GitHub Modelom
- Osobné prístupové tokeny (PAT) sú potrebné pre GitHub Models
- Vyžadujú sa osobné prístupové tokeny (PAT)
- Tokeny ukladajte ako premenné prostredia
- Nikdy neukladajte tokeny ani prihlasovacie údaje do repozitára
- Nikdy neukladajte tokeny alebo prihlasovacie údaje do repozitára
## Ďalšie poznámky
## Doplnkové poznámky
### Cieľová skupina
- Úplní začiatočníci vo webovom vývoji
- Študenti a samoštúdium
- Učitelia používajúci učebný plán v triedach
- Obsah navrhnutý pre prístupnosť a postupný rozvoj zručností
- Študenti a samoštudenti
- Učitelia používajúci kurz v triedach
- Obsah je navrhnutý pre prístupnosť a postupné zlepšovanie zručností
### Vzdelávacia filozofia
- Prístup založený na projektoch
- Časté kontroly vedomostí (kvízy)
- Praktické cvičenia v kódovaní
- Projektovo orientované učenie
- Časté kontrolné testy (kvízy)
- Praktické cvičenia v písaní kódu
- Príklady z reálneho sveta
- Zameranie na základy pred frameworkmi
- Zameranie na základy pred frameworkami
### Údržba úložiska
### Údržba repozitára
- Aktívna komunita študentov a prispievateľov
- Pravidelné aktualizácie závislostí a obsahu
- Problémy a diskusie monitorované správcami
- Aktualizácie prekladov automatizované cez GitHub Actions
- Sledovanie issues a diskusií správcami
- Automatizované aktualizácie prekladov cez GitHub Actions
### Súvisiace zdroje
- [Microsoft Learn moduly](https://docs.microsoft.com/learn/)
- [Student Hub zdroje](https://docs.microsoft.com/learn/student-hub/)
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) odporúčaný pre študentov
- Ďalšie kurzy: Generatívna AI, Data Science, ML, IoT učebné plány dostupné
- Ďalšie kurzy: Generatívna AI, Data Science, ML, IoT dostupné
### Práca s konkrétnymi projektmi
Pre podrobné inštrukcie ku jednotlivým projektom nájdete README súbory v:
- `quiz-app/README.md` - Vue 3 kvízová aplikácia
Podrobné inštrukcie k jednotlivým projektom nájdete v README súboroch:
- `quiz-app/README.md` - Vue 3 quiz aplikácia
- `7-bank-project/README.md` - Banková aplikácia s autentifikáciou
- `5-browser-extension/README.md` - Vývoj rozšírenia prehliadača
- `6-space-game/README.md` - Vývoj hry s canvasom
- `9-chat-project/README.md` - AI chat asistent projekt
- `6-space-game/README.md` - Vývoj hry na canvas
- `9-chat-project/README.md` - Projekt AI chat asistenta
### Štruktúra monorepa
Aj keď nejde o tradičné monorepo, toto úložisko obsahuje viacero nezávislých projektov:
Aj keď nejde o tradičné monorepo, tento repozitár obsahuje viacero nezávislých projektov:
- Každá lekcia je samostatná
- Projekty nezdieľajú závislosti
- Projekty nesdielajú závislosti
- Pracujte na jednotlivých projektoch bez ovplyvnenia ostatných
- Naklonujte celé repozitórium pre kompletný zážitok kurzu
- Naklonujte celý repozitár pre kompletný kurzový zážitok
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Zrieknutie sa zodpovednosti**:
Tento dokument bol preložený pomocou AI prekladateľskej služby [Co-op Translator](https://github.com/Azure/co-op-translator). Aj keď sa snažíme o presnosť, prosím majte na pamäti, že automatické preklady môžu obsahovať chyby alebo nepresnosti. Pôvodný dokument v jeho natívnom jazyku by mal byť považovaný za autoritatívny zdroj. Pre kritické informácie sa odporúča profesionálny ľudský preklad. Nie sme zodpovední za žiadne nedorozumenia alebo nesprávne interpretácie vyplývajúce z použitia tohto prekladu.
Tento dokument bol preložený pomocou služby AI prekladu [Co-op Translator](https://github.com/Azure/co-op-translator). Hoci sa snažíme o presnosť, majte, prosím, na pamäti, že automatizované preklady môžu obsahovať chyby alebo nepresnosti. Originálny dokument v jeho pôvodnom jazyku by mal byť považovaný za autoritatívny zdroj. Pre kritické informácie sa odporúča profesionálny ľudský preklad. Nie sme zodpovední za akékoľvek nepochopenia alebo nesprávne interpretácie vyplývajúce z použitia tohto prekladu.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Loading…
Cancel
Save