chore(i18n,docs): processed translations (#49769)

This commit is contained in:
camperbot
2023-03-20 21:25:13 +05:30
committed by GitHub
parent 20146dc4c0
commit 965660122f
11 changed files with 70 additions and 70 deletions
+14 -14
View File
@@ -12,7 +12,7 @@ freeCodeCamp працює на сучасному стеку JavaScript. Якщ
Деякі з перекладів вже доступні на сайті. Ми хочемо локалізувати freeCodeCamp на популярні мови. Деталі можна дізнатися [тут](https://www.freecodecamp.org/ukrainian/news/yak-dopomohty-z-perekladom-freecodecamp-na-ridnu-movu/).
Якщо ви хочете зробити внесок до перекладу, будь ласка, спочатку [прочитайте цей посібник](how-to-translate-files.md).
Якщо ви хочете зробити внесок до перекладу, будь ласка, спочатку [прочитайте цей довідник](how-to-translate-files.md).
### Чи можу я писати публікації або знімати відео для freeCodeCamp?
@@ -28,7 +28,7 @@ freeCodeCamp працює на сучасному стеку JavaScript. Якщ
Якщо ви впевнені, що це нова помилка, то, будь ласка, створіть нове завдання на GitHub. Надайте якомога більше інформації для того, щоб ми могли відтворити помилку. У нас є заздалегідь заготовлений шаблон, який може вам допомогти.
Будь ласка, зверніть увагу на те, що завдання на GitHub стосуються лише проблем щодо кодової бази та не мають ніякого відношення до допомоги з програмування. Якщо у вас є сумніви, то слід [звернутися за допомогою на форум](https://forum.freecodecamp.org), а вже потім створювати завдання на GitHub.
Будь ласка, зверніть увагу на те, що завдання на GitHub стосуються лише проблем щодо кодової бази та не мають ніякого відношення до допомоги з програмування. Якщо у вас є сумніви, то варто [звернутися за допомогою на форум](https://forum.freecodecamp.org), а вже потім створювати завдання на GitHub.
### Як повідомити про проблему з безпекою?
@@ -36,7 +36,7 @@ freeCodeCamp працює на сучасному стеку JavaScript. Якщ
### Я здобуваю освіту. Чи може робота на платформі зараховуватися мені в залікові кредити?
Так. Але зверніть, будь ласка, увагу, що ми не можемо надати жодних графіків чи документів, які вимагатиме ваш коледж або університет. Ми отримуємо багато пул реквестів та внесків до коду від розробників-волонтерів і ми поважаємо їхні час та зусилля. Ми поважаємо усіх наших користувачів, а тому не надаємо жодним запитам особливого пріоритету лише через те, що вони пов'язані з навчанням у закладах освіти.
Так. Але зверніть, будь ласка, увагу, що ми не можемо надати жодних графіків чи документів, які вимагатиме ваш коледж або університет. Ми отримуємо багато пул реквестів та внесків до коду від розробників-волонтерів і ми поважаємо їхні час та зусилля. Ми поважаємо усіх наших користувачів, а тому не надаємо жодним запитам особливого пріоритету лише через те, що вони повязані з навчанням у закладах освіти.
Ми просимо вас враховувати це та відповідно планувати свій час заздалегідь під час роботи над кодом.
@@ -46,9 +46,9 @@ freeCodeCamp працює на сучасному стеку JavaScript. Якщ
### Звідки почати, якщо я хочу працювати над завданням?
Вам слід переглянути [**`help wanted`**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) або [**`first timers only`**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22first+timers+only%22), щоб швидко ознайомитись з доступними задачами.
Вам варто переглянути [**`help wanted`**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) або [**`first timers only`**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22first+timers+only%22), щоб швидко ознайомитись з доступними завданнями.
> [!TIP] Завдання в **`help wanted`** загальнодоступні, тож вам не треба отримувати дозволи на роботу з ними. А ось завдання з позначкою **`first timers only`** це спеціальні завдання для людей, які ще не робили внесок до кодової бази freeCodeCamp.
> [!TIP] Завдання в **`help wanted`** загальнодоступні, тож вам не треба отримувати дозволи на роботу з ними. А ось завдання з позначкою **`first timers only`** це спеціальні завдання для людей, які ще не робили внесок до кодової бази freeCodeCamp.
### Знайшлась друкарська помилка. Чи потрібно повідомляти про цю проблему, перш ніж зробити пул реквест?
@@ -66,26 +66,26 @@ freeCodeCamp працює на сучасному стеку JavaScript. Якщ
- Чи враховано всі випадки використання?
- Чи ви переконалися, що всі тести виконуються і працюють локально?
3. Також ми даємо пріоритет тим пул реквестам, які дотримуються наших рекомендацій.
- Ви стежили за списком пул реквестів?
- Чи дотримано списку пул реквестів?
- Чи змістовна назва у вашого пул реквеста?
### Я хочу бути модератором freeCodeCamp. З чого мені варто почати?
Модератори нашої спільноти наші герої. Їхні добровільні внески роблять freeCodeCamp безпечною та гостинною спільнотою.
Модератори нашої спільноти наші герої. Їхні добровільні внески роблять freeCodeCamp безпечною та гостинною спільнотою.
Перш за все, ви повинні бути активним учасником нашої спільноти та дотримуватись нашого [кодексу поведінки](https://www.freecodecamp.org/news/code-of-conduct/) (а не просто обіцяти його виконання).
Перш за все, ви повинні бути активним учасником нашої спільноти та дотримуватись нашого [Кодексу поведінки](https://www.freecodecamp.org/news/code-of-conduct/) (а не просто обіцяти його виконання).
Декілька рекомендацій стосовно наших платформ:
- Щоб бути модератором **дискорду/чату**, будьте активними у нашому чаті та взаємодійте з іншими, навчаючись та практикуючи вирішення потенційних конфліктів.
- Щоб бути модератором **форуму**, будьте активними та взаємодійте з іншими людьми на форумі, підтримуйте їх та надавайте зворотний зв'язок за потреби. Див. [посібник керівника підфоруму](https://forum.freecodecamp.org/t/the-subforum-leader-handbook/326326) для додаткової інформації.
- Щоб бути модератором **форуму**, будьте активними та взаємодійте з іншими людьми на форумі, підтримуйте їх та надавайте зворотний звязок за потреби. Див. [посібник керівника підфоруму](https://forum.freecodecamp.org/t/the-subforum-leader-handbook/326326) для додаткової інформації.
- Щоб бути модератором **GitHub**, допомагайте з обробкою завдань GitHub, перевіряючи, чи вони дійсні та (в ідеалі) пропонуйте їх вирішення (власне чи чуже).
Коротко: поважайте інших. Ми люди з усього світу. Зважаючи на це, будь ласка, слідкуйте за своїм спілкуванням із людьми інших культур.
Коротко: поважайте інших. Ми люди з усього світу. Зважаючи на це, будь ласка, слідкуйте за своїм спілкуванням із людьми інших культур.
Якщо ви практикували вищезгадане **деякий час** та хтось із модераторів рекомендує вас, з вами зв'яжеться співробітник та залучить до команди модераторів. Відкрита робота є волонтерською роботою, і наш час обмежений. Ми розуміємо, що в вашому випадку це правда. Тому ми наголошуємо на тому, щоб бути **послідовними**, а не взаємодіяти у спільноті 24/7.
Якщо ви практикували вищезгадане **деякий час** та хтось із модераторів рекомендує вас, з вами звяжеться співробітник та залучить до команди модераторів. Робота над відкритим кодом є волонтерською, і наш час обмежений. Ми розуміємо, що в вашому випадку це правда. Тому ми наголошуємо на тому, щоб бути **послідовними**, а не взаємодіяти у спільноті 24/7.
Див. наш [довідник модератора](moderator-handbook.md) для детальнішого списку обов'язків модератора та наших очікувань від них.
Див. наш [довідник модератора](moderator-handbook.md) для детальнішого списку обовязків модератора та наших очікувань від них.
### Моя проблема не висвітлена у цій документації.
@@ -94,12 +94,12 @@ freeCodeCamp працює на сучасному стеку JavaScript. Якщ
- Категорії `Contributors` на [форумі нашої спільноти](https://forum.freecodecamp.org/c/contributors).
- Каналу `#Contributors` на [нашому чат-сервері](https://discord.gg/PRyKn3Vbay).
Ми раді допомогти вам зробити внесок до будь-якої цікавої для вас теми. Якщо ви поставите нам запитання у відповідній до нього темі, ми з радістю надамо вам роз'яснення. Перш ніж публікувати своє запитання, пошукайте чи не було його вирішено раніше.
Ми раді допомогти вам зробити внесок до будь-якої цікавої для вас теми. Якщо ви поставите нам запитання у відповідній до нього темі, ми з радістю надамо вам розяснення. Перш ніж публікувати своє запитання, пошукайте чи не було його вирішено раніше.
Заздалегідь дякуємо за ваші ввічливість та терпіння. Пам'ятайте, що ця спільнота здебільшого складається з волонтерів.
### Додаткова допомога
Якщо у вас є запитання щодо стека, архітектури коду, перекладів чи будь-чого іншого, зв'яжіться з нашою командою [на форумі](https://forum.freecodecamp.org/g/team).
Якщо у вас є запитання щодо стека, архітектури коду, перекладів чи будь-чого іншого, звяжіться з нашою командою [на форумі](https://forum.freecodecamp.org/g/team).
**Ви можете написати на електронну пошту нашим розробникам: `dev[at]freecodecamp.org`**
@@ -18,7 +18,7 @@
- Натомість використовуйте макети Flexbox та Grid, оскільки вони мають вбудовану підтримку RTL, і їх буде простіше підтримувати та переглядати.
- Не визначайте напрямок, використовуючи `margin` та `padding`: використання `padding-right` та `margin-left` може здаватись безобідним, але ці напрямки не відображаються, коли макет змінюється на RTL, а додавання протилежних значень ускладнює утримання кодової бази.
- Використовуйте логічні властивості: ви можете додати однаковий інтервал, використовуючи `padding-inline-end` та `margin-inline-start`, і вам не доведеться переживати про макет RTL, оскільки вони відповідають тому, де починається та закінчується рядок. Крім того, вам не доведеться турбуватися про додавання додаткових значень до файлів RTL, і, відповідно, не доведеться пам’ятати про зміну однакових значень у двох файлах.
- Не використовуйте `!important` у `font-family`: для макетів RTL та LTR використовуються різні шрифти; додавання `!important` до властивості `font-family` впливає й на макет RTL.
- Не використовуйте `!important` у `font-family`: для макетів RTL та LTR використовуються різні шрифти; додавання `!important` до властивості `font-family` також впливає на макет RTL.
## Загальний JavaScript
@@ -48,7 +48,7 @@
У більшості випадків рекомендовано використовувати оголошення інтерфейсу, а не оголошення типу.
Пропси компоненту React суфікс `Props`
Пропси компоненту React суфікс `Props`
```typescript
interface MyComponentProps {}
@@ -56,7 +56,7 @@ interface MyComponentProps {}
const MyComponent = (props: MyComponentProps) => {};
```
Stateful-компоненти React суфікс `State`
Stateful-компоненти React суфікс `State`
```typescript
interface MyComponentState {}
@@ -64,7 +64,7 @@ interface MyComponentState {}
class MyComponent extends Component<MyComponentProps, MyComponentState> {}
```
За замовчуванням ім’я об’єкта ВерблюдячимРегістром
За замовчуванням ім’я об’єкта ВерблюдячимРегістром
```typescript
interface MyObject {}
@@ -1,15 +1,15 @@
# Структура навчальної програми
Наш основний навчальний контент знаходиться у директорії під назвою `навчальна програма`. На цій сторінці буде детально описано, як ці файли організовані.
Наш основний навчальний вміст знаходиться у каталозі під назвою `curriculum`. На цій сторінці буде детально описано, як ці файли організовані.
## Термінологія
При обговоренні навчальної програми важливо знати декілька термінів.
- `certification` : коли йдеться про сертифікацію, мається на увазі сертифікати, які отримують користувачі. Це не те саме, що й superBlock.
- `superBlock` : superBlock це збірка найскладніших завдань. Кожен суперблок відповідає сертифікації в навчальній програмі (наприклад, «Адаптивний вебдизайн»).
- `block` : блок це розділ у межах superblock. Блок відповідає групі завдань у даній сертифікації (наприклад, «Основи HTML та HTML5»)
- `challenge` : завдання це окремий урок у навчальній програмі (наприклад, «Ознайомтесь з елементами HTML»)
- `superBlock` : збірка найскладніших завдань. Кожен суперблок відповідає сертифікації в навчальній програмі (наприклад, «Адаптивний вебдизайн»).
- `block` : розділ у межах superblock. Блок відповідає групі завдань у даній сертифікації (наприклад, «Основи HTML та HTML5»)
- `challenge` : це окремий урок у навчальній програмі (наприклад, «Ознайомлення з елементами HTML»)
## Дерево файлів
@@ -30,13 +30,13 @@ curriculum/
## Каталог `_meta`
Каталог `_meta` це особливий каталог, який містить файли `.json`. Ці файли відповідають кожному окремому блоку в навчальній програмі та використовуються, щоб визначити до якого суперблоку належить блок та порядок завдань у цьому блоці.
Каталог `_meta` це особливий каталог, який містить файли `.json`. Ці файли відповідають кожному окремому блоку в навчальній програмі та використовуються, щоб визначити до якого суперблоку належить блок та порядок завдань у цьому блоці.
## Перейменування файлів
Інколи вам потрібно перейменувати сертифікат, суперблок, блок чи завдання. У цьому розділі будуть описані важливі кроки, які допоможуть вам уникнути помилок збірки.
> [!УВАГА] Перейменування файлів у структурі навчальної програми часто змінює шлях (або URL-адресу) контенту на головній вебсторінці. Робити це слід з обережністю, оскільки перенаправлення потрібно налаштовувати для кожної внесеної зміни.
> [!УВАГА] Перейменування файлів у структурі навчальної програми часто змінює шлях (або URL-адресу) контенту на головній вебсторінці. Робити це варто з обережністю, оскільки перенаправлення потрібно налаштовувати для кожної внесеної зміни.
### Перейменування сертифікату
@@ -48,7 +48,7 @@ curriculum/
1. У файлі YAML, змініть `title` на нову назву.
1. Перейменуйте файл та папку з кроку 3 для решти мов навчальної програми.
1. Оновіть `client/src/redux/index.ts`, щоб використовувати правильний `title`.
1. За бажанням оновіть і `certSlug` для суперблока в цьому ж файлі. **Зауважте**, що перейменування `certSlug` змінить URL-адресу для сертифікатів, тому це слід робити обачно.
1. За бажанням оновіть і `certSlug` для суперблока в цьому ж файлі. **Зауважте**, що перейменування `certSlug` змінить URL-адресу для сертифікатів, тому це варто робити обережно.
1. Оновіть `title` в `client/src/resources/cert-and-project-map.ts` на нові значення. **Зверніть увагу**, що зміна `title` тут **зруйнує** сторінку superBlock для відповідної сертифікації. Це пов'язано із тим, що назва superBlock має відповідати назві сертифікації. Бажано одночасно змінити й назву суперблоку.
1. Якщо ви перейменували `certSlug` у сьомому кроці, змініть його тут для сертифіката і вкладених значень `projects`.
1. У `config/certification-settings.js`, оновіть значення `certTypeTitleMap` на нову назву.
@@ -58,7 +58,7 @@ curriculum/
### Перейменування суперблоку
> [!NOTE] Під час перейменування суперблоку, нове ім’я теки використовується як шлях і його слід вважати «вірним» ім’ям. Усі інші значення слід оновити, щоб показати цю зміну.
> [!NOTE] Під час перейменування суперблоку, нове ім’я теки використовується як шлях і його варто вважати «вірним» ім’ям. Усі інші значення потрібно оновити, щоб показати цю зміну.
Коли ви перейменовуєте суперблок, потрібно перейменувати сертифікат та блок `{superBlock}-projects`, оскільки вони мають спільну назву. Виконайте наступні кроки, щоб перейменувати лише superBlock:
@@ -1,12 +1,12 @@
# Як допомогти з відеозавданнями
Відеозавдання це новий тип завдань у навчальній програмі freeCodeCamp.
Відеозавдання це новий вид завдань у навчальній програмі freeCodeCamp.
Відеозавдання це маленька частина повноформатного відеокурсу на певну тему. Сторінка з відеозавданням містить відео на ютубі. Кожна сторінка має одне запитання з декількома варіантами відповідей, що стосуються відео. Користувач повинен правильно відповісти на запитання перед тим, як перейти до наступного відеозавдання курсу.
Відеозавдання це маленька частина повноформатного відеокурсу на певну тему. Сторінка з відеозавданням містить відео на ютубі. Кожна сторінка має одне запитання з декількома варіантами відповідей, що стосуються відео. Користувач повинен правильно відповісти на запитання перед тим, як перейти до наступного відеозавдання курсу.
Сторінки з відеозавданнями створюються учасниками команди freeCodeCamp. Відео на ютуб також завантажуються учасниками команди freeCodeCamp. Багато відеозавдань ще не мають запитань, пов'язаних з ними.
Сторінки з відеозавданнями створюються учасниками команди freeCodeCamp. Відео на ютуб також завантажуються учасниками команди freeCodeCamp. Багато відеозавдань ще не мають запитань, повязаних з ними.
Ви можете допомогти, створивши запитання з декількома варіантами відповіді, повʼязаних з розділами відео, та додавши ці питання до markdown-файлів для відеозавдань.
Ви можете допомогти, створивши запитання з декількома варіантами відповіді, повʼязаних з розділами відео, та додавши ці запитання до markdown-файлів для відеозавдань.
## Зразок завдання
@@ -67,7 +67,7 @@ Markdow-файли до відеозавдань можна знайти у на
Оберіть markdown-файл завдання із поданих нижче.
### Ознайомтеся із відео, пов'язаним із завданням, та створіть запитання із декількома варіантами відповіді
### Ознайомтеся із відео, повязаним із завданням, та створіть запитання із декількома варіантами відповіді
Спершу знайдіть `videoId`.
@@ -1,6 +1,6 @@
# Як відкрити запит на пул (PR)
# Як відкрити запит на злиття (PR)
Запит на пул (PR) дозволяє надсилати зміни зі свого форку на GitHub до головного репозиторію freeCodeCamp.org. Як тільки ви закінчите вносити зміни до коду, дотримуйтесь цих рекомендацій, щоб відкрити запит на пул.
Запит на злиття (PR) дозволяє надсилати зміни зі свого форку на GitHub до головного репозиторію freeCodeCamp.org. Як тільки ви закінчите вносити зміни до коду, дотримуйтесь цих рекомендацій, щоб відкрити PR.
Ми очікуємо, що наші помічники обізнані щодо процесу проєкту. Ви отримаєте повагу тих, хто відповідає за технічне обслуговування, і заощадите час, дотримуючись цих вказівок.
@@ -53,9 +53,9 @@
- `fix(api,client): prevent CORS errors on form submission`
- `docs(i18n): fix links to be relative instead of absolute`
## Proposing a Pull Request
## Запропонуйте PR
1. Once the edits have been committed, you will be prompted to create a pull request on your fork's GitHub Page.
1. Як тільки зміни будуть збережені, вам буде запропоновано створити PR на сторінці вашої гілки GitHub.
<details>
<summary>Переглянути знімок екрану</summary>
@@ -64,9 +64,9 @@
</details>
2. By default, all pull requests should be against the freeCodeCamp main repo, `main` branch.
2. Усі PR потрібно надсилати до головного репозиторію freeCodeCamp — гілки `main`.
Make sure that your Base Fork is set to freeCodeCamp/freeCodeCamp when raising a Pull Request.
Переконайтеся, що значення base fork встановлено на freeCodeCamp/freeCodeCamp під час створення PR.
<details>
<summary>Переглянути знімок екрану</summary>
@@ -75,11 +75,11 @@
</details>
3. Submit the pull request from your branch to freeCodeCamp's `main` branch.
3. Надішліть PR зі своєї гілки до гілки freeCodeCamp `main`.
4. Include a more detailed summary of the changes you made and how your changes are helpful in the body of your PR.
4. У тілі свого PR вкажіть детальну інформацію про внесені зміни та чим вони корисні.
- You will be presented with a pull request template. This is a checklist that you should have followed before opening the pull request.
- Вам буде надано шаблон PR. Це список, якого потрібно дотримуватись перед відкриттям PR.
- Fill in the details as you see fit. This information will be reviewed and the reviewers will decide whether or not your pull request is accepted.
@@ -2,7 +2,7 @@
Наша команда з редагування відповідає за забезпечення точних перекладів оригінального тексту. Редактори гарантують високу якість перекладів наших матеріалів.
Всі наші переклади зроблені від руки, живими людьми. Редагування гарантує, що всі матеріали, як от наша навчальна програма, перекладені систематично та коректно.
Всі наші переклади зроблені від руки, живими людьми. Редагування гарантує, що всі матеріали, як-от наша навчальна програма, перекладені систематично та коректно.
Щоб почати редагувати, перейдіть на [нашу перекладацьку платформу](https://translate.freecodecamp.org) та зареєструйтеся. Виберіть «Go to console» зверху на навігаційній панелі, щоб перемикнутися з публічного типу сторінки на робочий.
@@ -12,7 +12,7 @@
![Зображення - Дерево файлів редагування](https://contribute.freecodecamp.org/images/crowdin/proof-file-tree.png)
Тепер ви повинні побачити список доступних файлів. Виберіть файл, натиснувши клавішу `Proofread` справа від файлу, тоді виберіть `Proofreading` з меню, що з'явилось.
Тепер ви повинні побачити список доступних файлів. Виберіть файл, натиснувши клавішу `Proofread` справа від файлу, тоді виберіть `Proofreading` з меню, що зявилось.
> [!NOTE] Якщо ви перейшли на робочий тип сторінки, але хочете [перекладати](how-to-translate-files.md), а не редагувати, натомість виберіть `Crowdsourcing` у запропонованому меню.
@@ -41,7 +41,7 @@
## Як стати редактором
Якщо у вас є запитання, або ви хочете стати редактором, напишіть у [contributors chat](https://discord.gg/PRyKn3Vbay). Як правило, ми надамо вам доступ до редагування, якщо ви вже деякий час мали справу з freeCodeCamp.
Якщо у вас є запитання, або ви хочете стати редактором, напишіть у [чаті помічників](https://discord.gg/PRyKn3Vbay). Як правило, ми надамо вам доступ до редагування, якщо ви вже деякий час мали справу з freeCodeCamp.
Наша команда завжди шукає охочих волонтерів, які допоможуть зробити високоякісні переклади, доступні для світової спільноти.
@@ -49,6 +49,6 @@
## Створення в чаті каналу для світової мови
В основному, ми рекомендуємо використовувати [contributors chat](https://discord.gg/PRyKn3Vbay) для комунікації. Проте, якщо команда волонтерів-перекладачів для однієї мови зростатиме, ми можемо розглянути питання про створення окремого каналу.
В основному, ми рекомендуємо використовувати [чат помічників](https://discord.gg/PRyKn3Vbay) для комунікації. Проте, якщо команда волонтерів-перекладачів для однієї мови зростатиме, ми можемо розглянути питання про створення окремого каналу.
Якщо ви вже є редактором та зацікавлені в окремому каналі нашого чату, створеному для конкретної мови, [заповніть цю форму](https://forms.gle/XU5CyutrYCgDYaVZA).
+16 -16
View File
@@ -6,23 +6,23 @@
> [!TIP] Ви можете почати з цього [оголошення](https://www.freecodecamp.org/news/help-translate-freecodecamp-language/). Ми рекомендуємо приєднатися до [форуму](https://forum.freecodecamp.org/c/contributors/3) та [чат-серверу Discord](https://discord.gg/PRyKn3Vbay).
Ви можете перекладати скільки завгодно і коли завгодно. Єдине, що має значення це скільки часу та сил ви готові приділити перекладу у ролі волонтера-перекладача.
Ви можете перекладати скільки завгодно і коли завгодно. Єдине, що має значення це скільки часу та сил ви готові приділити перекладу у ролі волонтера-перекладача.
Будь ласка, ознайомтеся з наступним:
1. **Переклад це командна робота.**
1. **Переклад це командна робота.**
Переклад ресурсів freeCodeCamp один із найцікавіших та найцінніших досвідів. Ще краще, якщо ви залучаєте своїх друзів та колег, які говорять тією самою мовою, що і ви.
Переклад ресурсів freeCodeCamp один із найцікавіших та найцінніших досвідів. Ще краще, якщо ви залучаєте своїх друзів та колег, які говорять тією самою мовою, що і ви.
Ви можете почати з цього [оголошення](https://www.freecodecamp.org/news/help-translate-freecodecamp-language/). Але перш ніж розпочати перекладати, ми рекомендуємо приєднатися до [форуму](https://forum.freecodecamp.org/c/contributors/3) та [чат-серверу Discord](https://discord.gg/PRyKn3Vbay). Завдяки Crowdin та іншим інструментам перекладати легко, але це однаково передбачає багато роботи.
Ми хочемо, щоб ви насолоджувалися внеском, який робите, але не вигорали та не втрачали інтерес.
Невелика група з 4-5 осіб це хороші умови для початку. Згодом ви зможете залучити до команди ще більше друзів.
Невелика група з 4-5 осіб це хороші умови для початку. Згодом ви зможете залучити до команди ще більше друзів.
2. **Функціонування мовних серверів коштує досить багато.**
На перший погляд не видно наскільки складним є технічний стек, але підтримувати роботу досить дорого. Сюди входить надання додаткових серверів та виділення персоналу для догляду за ними.
На перший погляд не видно наскільки складним є технічний стек, але підтримувати роботу досить дорого. Сюди входить надання додаткових серверів та виділення персоналу для догляду за ними.
freeCodeCamp.org прагне забезпечити їх безоплатно, однак нам потрібно надати пріоритет тим, хто найбільше їх потребує. Ми не хочемо закривати мовні сервери, якщо діяльність перекладу припиниться і зникне попит на певну мову.
@@ -32,7 +32,7 @@
3. **Але як щодо мов, яких немає на перекладацькій платформі?**
Ми переглянули нашу базу користувачів і додали 30+ найпоширеніших мов до списку дозволених мов на перекладацькій платформі. Деякі мови, такі як китайська та іспанська, вже опубліковані на **"/learn"**.
Ми переглянули нашу базу користувачів і додали 30+ найпоширеніших мов до списку дозволених мов на перекладацькій платформі. Деякі мови, такі як китайська та іспанська, вже опубліковані на **/learn**.
На жаль, наш список не містить сотень мов. Щодня ми отримуємо десятки запитів від учасників, які хочуть допомогти перекласти сайт своєю мовою.
@@ -40,11 +40,11 @@
Якщо ви хочете, щоб ми зарахували нову мову, радимо залучити до цього своїх друзів.
Якщо у вас є невелика група людей (принаймні 4-5), зацікавлених і відданих справі, ми можемо зв'язатись через дзвінок. Ми пояснимо всі деталі та ознайомимо з деякими інструментами й процесами.
Якщо у вас є невелика група людей (принаймні 4-5), зацікавлених і відданих справі, ми можемо звязатись через дзвінок. Ми пояснимо всі деталі та ознайомимо з деякими інструментами й процесами.
## Загальне про Crowdin
Наша мрія це надати навчальні матеріали незалежно від того, якою мовою ви розмовляєте. Аби впоратися із цією непростою задачею, ми інтегрували нашу відкриту базу коду та навчальної програми на [Crowdin](https://crowdin.com/) інструмент для локалізації.
Наша мрія це надати навчальні матеріали незалежно від того, якою мовою ви розмовляєте. Аби впоратися із цією непростою задачею, ми інтегрували нашу відкриту базу коду та навчальної програми на інструмент для локалізації [Crowdin](https://crowdin.com/).
> [!NOTE] У нас інший інструмент та робочий процес для перекладу [публікацій](https://www.freecodecamp.org/news). Якщо ви зацікавлені у перекладі публікацій, прочитайте [це оголошення](https://www.freecodecamp.org/news/help-translate-freecodecamp-language/) та зверніться до свого мовного керівника.
@@ -86,7 +86,7 @@
![Зображення - Список доступних файлів](https://contribute.freecodecamp.org/images/crowdin/file-tree.png)
Кожен файл і папка мають індикатор виконання. **Синя** частина індикатору показує відсоток файлу, який вже перекладено, а **зелена** відсоток, який вже затверджено.
Кожен файл і папка мають індикатор виконання. **Синя** частина індикатору показує відсоток файлу, який вже перекладено, а **зелена** відсоток, який вже затверджено.
Виберіть файл, після чого Crowdin відкриє редактор.
@@ -101,11 +101,11 @@ Crowdin розділяє документ на «рядки», зазвичай
1. Рядок, виділений зеленим, вже має запропонований переклад.
2. Рядок, виділений червоним, _не_ має запропонованого перекладу.
3. Рядок з сірим текстом не перекладається. Цей стосується коду та іншого контенту, який не потрібно перекладати. Ви не зможете обрати ці рядки у редакторі.
4. Якщо хтось вже запропонував переклад рядка, Crowdin зобразить всі варіанти тут. Ви не зможете зберегти ідентичний переклад. Проте, якщо ви бачите, що переклад точний, натисніть `+`, щоб проголосувати за нього. Якщо переклад неточний можна проголосувати проти нього, натиснувши `-`.
4. Якщо хтось вже запропонував переклад рядка, Crowdin зобразить всі варіанти тут. Ви не зможете зберегти ідентичний переклад. Проте, якщо ви бачите, що переклад точний, натисніть `+`, щоб проголосувати за нього. Якщо переклад неточний можна проголосувати проти нього, натиснувши `-`.
5. Crowdin пропонуватиме переклади на основі пам’яті перекладів (TM) або машинного перекладу (MT). Пам’ять перекладів посилається на схожі або ідентичні рядки, які вже перекладено/затверджено в інших файлах. Машинний переклад посилається на переклади, рекомендовані інтегрованою бібліотекою.
6. Це вікно редактора, де ви можете писати переклад вибраного рядка.
7. Поточний вибраний рядок в редакторі буде виділено жовтим кольором.
8. Тут ви побачите теґи, що вказують на статус рядка. `Done` означає, що рядок має принаймні один запропонований переклад. `Todo` означає, що рядок не має жодних запропонованих перекладів.
8. Тут ви побачите теги, які вказують на статус рядка. `Done` означає, що рядок має принаймні один запропонований переклад. `Todo` означає, що рядок не має жодних запропонованих перекладів.
9. Це вікно для коментарів. Якщо ви маєте запитання або зауваження щодо конкретного рядка, то можете залишити коментарі тут, щоб інші перекладачі могли їх бачити.
10. Ці дві кнопки приховують ліве (документ) і праве (коментарі) вікна.
@@ -115,7 +115,7 @@ Crowdin розділяє документ на «рядки», зазвичай
Ви можете перекласти стільки рядків, скільки вам завгодно: інші кроки від вас не вимагаються. Щоб зберегти переклад, потрібно тільки натиснути `Save`.
> [!NOTE] Якщо ви бачите якісь неточності в оригінальному файлі англійською мовою, будь ласка, не виправляйте їх у процесі перекладу. Натомість залиште коментар або створіть GitHub issue.
> [!NOTE] Якщо ви бачите якісь неточності в оригінальному файлі англійською мовою, будь ласка, не виправляйте їх у процесі перекладу. Натомість залиште коментар або створіть завдання на GitHub.
## Перекладайте навчальний інтерфейс
@@ -137,13 +137,13 @@ Crowdin розділяє документ на «рядки», зазвичай
![Зображення зі стрілкою, що вказує на контекст від Crowdin](https://contribute.freecodecamp.org/images/crowdin/context.png)
Якщо у вас є запитання щодо розташування рядка, напишіть нам у [contributor chat](https://discord.gg/PRyKn3Vbay).
Якщо у вас є запитання щодо розташування рядка, напишіть нам у [чаті помічників](https://discord.gg/PRyKn3Vbay).
## Перекладайте документацію
Переклад нашої документації схожий до перекладу файлів навчальної програми.
> [!NOTE] Наша документація підтримує `docsify` та у нас є спеціальний аналіз для таких повідомлень. Якщо ви бачите рядки, які починаються з `[!NOTE]`, `[!WARNING]` або `[!TIP]` ці слова НЕ перекладаються.
> [!NOTE] Наша документація підтримує `docsify` та у нас є спеціальний аналіз для таких повідомлень. Якщо ви бачите рядки, які починаються з `[!NOTE]`, `[!WARNING]` або `[!TIP]` ці слова НЕ перекладаються.
### Як перекладати документацію з внутрішніми посиланнями
@@ -308,7 +308,7 @@ I better take notes so I can learn more about it."
## Оцінюйте переклади
Crowdin дозволяє вам оцінювати вже запропоновані переклади. Якщо ви спробуєте зберегти переклад, ви можете побачити повідомлення, що його неможливо зберегти це означає, що інший учасник запропонував ідентичний переклад. Якщо ви згідні з перекладом, натисніть `+`, щоб проголосувати «за» переклад.
Crowdin дозволяє вам оцінювати вже запропоновані переклади. Якщо ви спробуєте зберегти переклад, ви можете побачити повідомлення, що його неможливо зберегти це означає, що інший учасник запропонував ідентичний переклад. Якщо ви згідні з перекладом, натисніть `+`, щоб проголосувати «за» переклад.
Якщо ви бачите переклад, який неточний або не передає суті рядка, натисніть `-`, щоб проголосувати «проти».
@@ -316,7 +316,7 @@ Crowdin використовує ці голоси, щоб дати оцінку
## Перевірка якості
Ми дозволили деякі кроки щодо забезпечення якості, які підтверджують, що переклад є максимально точним це допомагає нашим редакторам перевіряти запропоновані переклади.
Ми дозволили деякі кроки щодо забезпечення якості, які підтверджують, що переклад є максимально точним це допомагає нашим редакторам перевіряти запропоновані переклади.
Якщо ви спробуєте зберегти переклад, ви можете побачити попереджувальне повідомлення щодо свого перекладу.
+2 -2
View File
@@ -12,7 +12,7 @@
## Навчальна програма
Нашу навчальну програму курує міжнародна спільнота freeCodeCamp. Завдяки цьому ми можемо постійно враховувати та додавати думки експертів-волонтерів.
Нашу навчальну програму курує міжнародна спільнота freeCodeCamp. Завдяки цьому ми можемо постійно враховувати та додавати думки волонтерів.
Ви можете допомогти нам збагатити та покращити навчальну програму. Ви також можете оновлювати історії користувачів з проєктів, щоб доповнити поняття тих чи інших концепцій. Ви також можете покращити наші автоматизовані тести, щоб ми могли максимально точно перевіряти код людей.
@@ -42,4 +42,4 @@
В цілому ми маємо сервер API на основі Node.js, набір клієнтських додатків на основі React, тестові скрипти для оцінки проєктів кемперів та багато іншого. Якщо ви хочете здійснити внесок до навчальної платформи, ми радимо ознайомитися із цими інструментами.
**Якщо ви хочете допомогти нам покращити нашу кодову базу, ось [як встановити freeCodeCamp](how-to-setup-freecodecamp-locally.md).**
**Якщо ви хочете допомогти нам покращити нашу кодову базу, див. [як налаштувати freeCodeCamp](how-to-setup-freecodecamp-locally.md).**
+4 -4
View File
@@ -1,11 +1,11 @@
# Відповідальне розкриття інформації Зала слави
# Відповідальне розкриття інформації. Зала слави
Ми цінуємо будь-яке відповідальне розкриття інформації, що може вплинути на цілісність наших платформ та користувачів. Якщо ви зацікавлені в тому, щоб зробити свій внесок до безпеки нашої платформи, ознайомтесь з нашою [політикою безпеки](security.md).
Поки ми не пропонуємо жодних щедрот на даний момент, ми вдячні цим неймовірним людям, що допомагають нам зберегти платформу безпечною для всіх:
Наразі ми не пропонуємо жодних щедрот, але ми вдячні цим неймовірним людям, які допомагають нам зберегти платформу безпечною для всіх:
- Мехул Мохан з [codedamn](https://codedamn.com) ([@mehulmpt](https://twitter.com/mehulmpt)) [Виправлення вразливості](https://github.com/freeCodeCamp/freeCodeCamp/blob/bb5a9e815313f1f7c91338e171bfe5acb8f3e346/client/src/components/Flash/index.js)
- Мехул Мохан з [codedamn](https://codedamn.com) ([@mehulmpt](https://twitter.com/mehulmpt)) [Виправлення вразливості](https://github.com/freeCodeCamp/freeCodeCamp/blob/bb5a9e815313f1f7c91338e171bfe5acb8f3e346/client/src/components/Flash/index.js)
- Пітер Самір https://www.linkedin.com/in/peter-samir/
- Лоуренс Теннант ([@hyperreality](https://github.com/hyperreality)) працює з IncludeSecurity.com [GHSA-c3r-grh4-27gj](https://github.com/freeCodeCamp/freeCodeCamp/security/advisories/GHSA-cc3r-grh4-27gj)
- Лоуренс Теннант ([@hyperreality](https://github.com/hyperreality)) працює з IncludeSecurity.com [GHSA-c3r-grh4-27gj](https://github.com/freeCodeCamp/freeCodeCamp/security/advisories/GHSA-cc3r-grh4-27gj)
> ### Дякуємо за ваш вклад :pray:
+3 -3
View File
@@ -4,7 +4,7 @@
## Повідомлення про вразливість
> [!NOTE] Якщо ви вважаєте, що знайшли вразливість, **будь ласка, повідомте про це**. Не створюйте завдань на GitHub щодо питань безпеки. Натомість слідуйте цій інструкції.
> [!NOTE] Якщо ви вважаєте, що знайшли вразливість, **будь ласка, повідомте про це**. Не створюйте завдань на GitHub щодо питань безпеки. Натомість дотримуйтесь цієї інструкції.
### Настанови
@@ -12,13 +12,13 @@
1. Переконайтесь, що використовуєте **найновіші**, **стабільні** та **оновлені** версії операційної системи та веббраузера, доступних на вашій машині.
2. Ми відносимо звіти, для яких використовувались інструменти та утиліти про повідомлення проблеми із конфігурацією SPF та DKIM, тестами SSL тощо, до категорії [«випрошування щедрот»](https://www.troyhunt.com/beg-bounties) та не відповідаємо на них.
3. Поки ми не пропонуємо жодних винагород, ми будемо раді розмістити ваше ім'я у нашому списку [Зали слави](security-hall-of-fame.md), при умові, що звіти забрали чимало зусиль.
3. Наразі ми не пропонуємо жодних винагород, але будемо раді розмістити ваше імя у нашому списку [Зали слави](security-hall-of-fame.md), при умові, що звіти забрали чимало зусиль.
### Звітність
Після підтвердження вищезгаданих настанов, будь ласка, напишіть на `possible-security-issue [at] freecodecamp.org`. Також ви можете надіслати PGP-зашифроване повідомлення на `flowcrypt.com/me/freecodecamp`.
Як тільки ви повідомите про вразливість, ми розглянемо та впевнимось, що вона не хибно позитивна. Якщо нам необхідно прояснити будь-яку інформацію, то ми зв'яжемося з вами. Ви можете надіслати окремі звіти для кожної знайденої вами проблеми. Зверніть увагу, що ми не можемо відповісти на проблеми, які, на нашу думку, не входять до настанов.
Як тільки ви повідомите про вразливість, ми розглянемо та впевнимось, що вона не хибно позитивна. Якщо нам необхідно прояснити будь-яку інформацію, то ми звяжемося з вами. Ви можете надіслати окремі звіти для кожної знайденої вами проблеми. Зверніть увагу, що ми не можемо відповісти на проблеми, які, на нашу думку, не входять до настанов.
## Платформи та кодові бази
+1 -1
View File
@@ -12,4 +12,4 @@
## Як вони працюють
Токени зберігаються у колекції `UserToken` у базі даних. Кожен запис має унікальний `_id`, який є токеном та `user_id`, який посилає на обліковий запис користувача із колекції `user`. Токен закодовано за допомогою JWT та відправлено клієнту під час його створення. Потім цей закодований токен надають стороннім сервісам, які потребують його, а коли завдання виконане відправляють його на наш API. Коли наш API отримує токен, він буде розкодованим, щоб ми могли ідентифікувати користувача та зберегти виконане завдання до його `completedChallenges`.
Токени зберігаються у колекції `UserToken` у базі даних. Кожен запис має унікальний `_id`, який є токеном та `user_id`, який посилає на обліковий запис користувача із колекції `user`. Токен закодовано за допомогою JWT та відправлено клієнту під час його створення. Потім цей закодований токен надають стороннім сервісам, які потребують його, а коли завдання виконане відправляють його на наш API. Коли наш API отримує токен, він буде розкодованим, щоб ми могли ідентифікувати користувача та зберегти виконане завдання до його `completedChallenges`.