Skip to content

Commit

Permalink
Merge pull request #544 from stillst/feat-ru
Browse files Browse the repository at this point in the history
feat(docs): add russian lang
  • Loading branch information
tomalaforge authored Jan 28, 2024
2 parents 9e26960 + 71dbaea commit 61c1c33
Show file tree
Hide file tree
Showing 10 changed files with 452 additions and 0 deletions.
6 changes: 6 additions & 0 deletions docs/astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@ export const locales = {
label: 'Português',
lang: 'pt',
},
ru: {
label: 'Русский',
lang: 'ru',
},
};

// https://astro.build/config
Expand All @@ -44,6 +48,7 @@ export default defineConfig({
es: 'Guías',
fr: 'Guides',
pt: 'Guias',
ru: 'Руководство',
},
},
{
Expand All @@ -53,6 +58,7 @@ export default defineConfig({
es: 'Desafíos',
fr: 'Challenges',
pt: 'Desafios',
ru: 'Задачи',
},
},
],
Expand Down
48 changes: 48 additions & 0 deletions docs/src/content/docs/ru/guides/checkout-answer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: Изучайте чужие решения
description: Руководство по просмотру чужого ответа.
sidebar:
order: 3
---

Все ответы на испытания Angular представлены в виде Pull Request (PR). Чтобы их просмотреть и изучить, нужно перейти на страницу **Files Changes** на GitHub. Однако, если вы не знакомы с интерфейсом, процесс может быть не очевидным. Иногда посмотреть на решение в вашей любимой IDE может быть удобнее.

Это руководство поможет вам с этим.

## Проверьте чужой PR локально

### Синхронизируйте свой репозиторий

В начале вам нужно синхронизировать вашу копию репозитория, чтобы убедиться, что она находится в актуальном состоянии.

Это можно сделать, нажав на кнопку **Sync fork** на главной странице репозитория.

![Sync project header](../../../../assets/fork-sync.png)

На изображении выше видно, что моя ветка отстает от основной ветки на 8 коммитов, и мне нужно синхронизировать ее, чтобы она была в актуальном состоянии.

![Sync project update modal](../../../../assets/sync-fork-update.png)

### Перейдите к PR

Перейдите к PR, который вы хотите изучить локально, и узнайте его ID. Вы найдете его в заголовке PR (как показано ниже).

![PR header](../../../../assets/PR-header.png)

Далее откройте терминал в каталоге проекта и выполните следующую команду:

```bash
gh pr checkout <ID>
```

Если вы не помните команду, нажмите на кнопку "Code" в правой части заголовка, и вы сможете легко скопировать/вставить команду.

![PR code modal](../../../../assets/PR-code-btn-modal.png)

:::note[Примечание]
Если команда не сработала, Github CLI подскажет, что делать.
:::

🔥Теперь вы можете изучить решение локально и запустить его для тестирования.🔥

<!-- gh repo set-default -->
20 changes: 20 additions & 0 deletions docs/src/content/docs/ru/guides/contribute.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
title: Вносите свой вклад
description: Описание как помочь проекту
sidebar:
order: 4
---

Вы можете помочь проекту многими способами:

🔥 Создавайте новые испытания, следуя инструкциям [тут](/guides/create-challenge).

🔥 Проходите испытания и отправляйте свои решения на ревью (руководство [тут](/guides/resolve-challenge)).

🔥 Проводите ревью чужих решений, оставляя конструктивные и вежливые комментарии.

🔥 Исправляйте опечатки и ошибки в документации.

🔥 Оставляйте issues, чтобы предложить идеи новых испытаний или сообщить об ошибках.

🔥 Поддерживайте проект [тут](https://github.com/sponsors/tomalaforge).
54 changes: 54 additions & 0 deletions docs/src/content/docs/ru/guides/create-challenge.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: Создайте свое испытание
description: Руководство по созданию испытания
sidebar:
order: 5
---

У вас есть идея, которой вы хотите поделиться, интересная ошибка, с которой вы боретесь в одном из своих проектов, или что-то необычное в Angular, что вы обнаружили. Всё это - хорошая отправная точка, чтобы создать испытание и поделиться её решением с другими.

Но как начать создавать испытания?

## Шаблон создания испытания

Чтобы упростить этот процесс, я создал генератор Nx, который настроит все за вас и поможет вам быстрее начать. Проще всего его запустить в консоли Nx: перейдите в раздел <b>Nx Console > generate > @angular-challenges/cli - challenge</b>

### Параметры

#### обязательные параметры

- <b>title</b>: Название, которое вы хотите дать испытанию.
:::note[Примечание]
Название должно быть не больше 25 символов.
:::

- <b>challengeDifficulty</b>: Сложность испытания. Есть три уровня сложности : 🟢 простой / 🟠 средний / 🔴 трудный
- <b>name</b>: Имя NX приложения.
:::note[Примечание]
Имя должно быть написано **kebab-case**
:::
- <b>docRepository</b>: Категория испытания: Nx, Angular, Angular Performance, Rxjs, NgRx, Typescript.

#### необязательные параметры

- <b>directory</b>: Если вы не хотите, чтобы приложение находилось в стандартной папке внутри `apps`.
- <b>addTest</b>: Если хотите добавить конфигурацию теста.

### Что будет создано

- Генератор создаст все файлы, необходимые для нового рабочего приложения. Все эти файлы будут созданы внутри `apps/${directory}/${name}`
- Файл Markdown с минимальными настройками будет создан внутри `docs/src/content/docs/challenges/${docRepository}`

## Создание испытания

Все что осталось - создать испытание. 🚀

:::danger[Опасно]
Не забудьте обновить документацию, чтобы описать свою задачу и дать инструкции.
:::

Дальше действовать будете вы!!! 💪

## Отправка решения

Не забудьте представить своё решение задачи в течение недели.
17 changes: 17 additions & 0 deletions docs/src/content/docs/ru/guides/faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: Часто задаваемые вопросы
description: Ответы на вопросы
sidebar:
order: 7
---

<details>
<summary>Почему мое приложение не запускается, или почему я вижу ошибки в терминале при запуске `nx serve`?</summary>

Чаще всего эта проблема возникает из-за того, что node_modules устарели, и вам нужно обновить их, выполнив команду `npm ci`.

Если установка завершилась неудачно, вы можете попробовать решить эту проблему, удалив папку node_modules с помощью команды `rm -rf node_modules` или `npx npkill` а затем снова выполнить `npm ci`.

Если проблема сохранится, пожалуйста, сообщите о ней [тут](https://github.com/tomalaforge/angular-challenges/issues/new).

</details>
58 changes: 58 additions & 0 deletions docs/src/content/docs/ru/guides/getting-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
title: Первые шаги
description: Руководство о том, как начать работу с испытаниями Angular.
sidebar:
order: 1
---

Чтобы начать работу с <b>испытаниями Angular</b>, выполните следующие шаги:

## Создайте аккаунт на Github

Если вы захотите отправить свое решение для испытания, вам потребуется аккаунт на GitHub. Кроме того, иметь учетную запись на GitHub всегда полезно, тем более это бесплатно.

## Скопируйте github проект

Перейдите в [Angular Challenges Repository](https://github.com/tomalaforge/angular-challenges) и нажмите на кнопку <span class="github-neutral-btn"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo-forked mr-2">
<path d="M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0ZM5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Zm6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z"></path></svg>Fork</span> в вверху страницы. Это создаст копию репозитория на вашей GitHub странице.

## Клонируйте репозиторий на свой компьютер

Выберите папку на своем компьютере и клонируйте репозиторий.

Откройте терминал, перейдите в выбранный каталог и наберите команду:

```bash
git clone https://github.com/[YOUR_GITHUB_NAME]/angular-challenges.git
```

:::note

Вы можете найти URL адрес клонированного репозитория, нажав на кнопку <span class="github-success-btn"><> Code</span> в <b>вашем собственном</b> экземпляре репозитория Angular Challenges.

![Header of github workpspace](../../../../assets/header-github.png)

:::

## Откройте проект в вашей любимой среде разработки

Откройте проект в любой IDE на ваш выбор.

## Установите все зависимости

```bash
npm ci
```

## Выберите задачу

Ваш проект сейчас поднят и запущен. Осталось только выбрать испытание 🚀

Каждое испытание состоит из:

- <b>Имя</b>: описывает о чем испытание.
- <b>Номер</b>: порядковый номер создания. Этот номер не несет какого-то смысла, но служит для ссылки в секции Github Pull Request.
- <b>Бейдж</b>: показывает уровень сложности. Полностью субъективно 😅
- 🟢 простое
- 🟠 среднее
- 🔴 сложное
55 changes: 55 additions & 0 deletions docs/src/content/docs/ru/guides/rebase.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
title: Сделайте rebase вашей ветки
description: Руководство по rebase ветки на последние изменения
sidebar:
order: 6
---

Иногда в проект могут вноситься изменения. Я стараюсь вносить изменения, которые ничего не сломают, но иногда этого не избежать.

В большинстве случаев вам не придется делать rebase вашего решения, но вот руководство, которое поможет вам понять, как это сделать.

:::note[Примечание]
Это руководство применимо к любому проекту с открытым исходным кодом.
:::

## Шаги rebase

### Синхронизируйте ваш репозиторий

Во-первых, вам нужно синхронизировать вашу копию, чтобы убедиться, что она содержит последние изменения.

Вы можете сделать это, нажав на кнопку Sync fork на главной странице вашего репозитория.

![Sync project header](../../../../assets/fork-sync.png)

На изображении выше видно, что моя ветка отстает от основной ветки на 8 коммитов, и мне нужно синхронизировать ее, чтобы она была в актуальном состоянии.

![Sync project update modal](../../../../assets/sync-fork-update.png)

### Откройте терминал

Откройте любой терминал, будь то терминал в любимой IDE или отдельное приложение.

### Гит

Выполните следующие команды, чтобы сделать rebase локальной ветки:

- git checkout main
- git pull
- git checkout [your branch]
- git rebase main
- Разрешите конфликты

На этом этапе rebase может остановиться, потому что в вашей локальной ветке есть конфликтующие файлы с основной веткой. Исправьте это. После того как закончите:

- git add .
- git rebase --continue

Если в вашей ветке нет конфликтов, будет показано сообщение об успехе.

### Отправьте свою работу в удаленный репозиторий

Наконец, отправьте свою работу на GitHub:

- git push -f
Loading

0 comments on commit 61c1c33

Please sign in to comment.