diff --git a/documentation/spring/ru/.dependencies.md b/documentation/spring/ru/.dependencies.md
new file mode 100644
index 0000000..cf7f399
--- /dev/null
+++ b/documentation/spring/ru/.dependencies.md
@@ -0,0 +1,19 @@
+Чтобы начать, выберете свой сборщик вкладку и добавьте зависимости в проект.
+
+=== ":simple-apachemaven: Maven"
+
+ ``` xml
+
+
+ dev.struchkov.godfather.telegram
+ telegram-bot-spring-boot-starter
+ 0.0.51
+
+ ```
+
+=== ":simple-gradle: Gradle"
+
+ ``` groovy
+ // https://mvnrepository.com/artifact/dev.struchkov.godfather.telegram/telegram-bot-spring-boot-starter
+ implementation 'dev.struchkov.godfather.telegram:telegram-bot-spring-boot-starter:0.0.51'
+ ```
\ No newline at end of file
diff --git a/documentation/spring/ru/docs/architecture/general.md b/documentation/spring/ru/docs/architecture/general.md
new file mode 100644
index 0000000..73603a1
--- /dev/null
+++ b/documentation/spring/ru/docs/architecture/general.md
@@ -0,0 +1,26 @@
+# Основная идея
+
+## Голосарий
+
+## Юнит
+
+## Сценарий
+Для понимания рассмотрим небольшой пример по схеме изображенной ниже. Так же небольшие примеры обработки есть в тестах.
+
+![Типичный сценарий](img/scenario.png){ loading=lazy align=left }
+
+Сценариями в данном случае являются:
+
+* Unit1 —> Unit2 —> Unit5 —> Unit7 —> Unit9
+* Unit1 —> Unit2 —> Unit6 —> Unit8;
+* Unit1 —> Unit3 —> Unit6 —> Unit8;
+* Unit1 —> Unit4 —> Unit9;
+* Unit10.
+
+Пользователь присылает боту свое первое сообщение, например, «Привет». Если сообщение удовлетворяет регулярному выражению или содержит необходимое количество ключевых слов Unit1, то возвращается Unit1, то же самое относится к Unit10.
+
+Если оба юнита удовлетворяют запросу пользователя, то будет возвращен юнит с большим приоритетом (поле priority). Если приоритеты равны, то случайный Unit.
+
+В нашем примере, на первое сообщение, пользователь получил Unit1, поэтому следующее сообщение пользователя будет ассоциироваться с множеством: Unit2, Unit3 и Unit4.
+
+## Механизм выбора юнита
\ No newline at end of file
diff --git a/documentation/spring/ru/docs/architecture/img/scenario.png b/documentation/spring/ru/docs/architecture/img/scenario.png
new file mode 100644
index 0000000..08244fe
Binary files /dev/null and b/documentation/spring/ru/docs/architecture/img/scenario.png differ
diff --git a/documentation/spring/ru/docs/architecture/unit.md b/documentation/spring/ru/docs/architecture/unit.md
new file mode 100644
index 0000000..6c24a4b
--- /dev/null
+++ b/documentation/spring/ru/docs/architecture/unit.md
@@ -0,0 +1,16 @@
+# Устройство юнитов
+
+## Приоритет
+
+
+## Триггеры
+
+Позволяют указать при каком условии данный юнит будет выбран для обработки.
+
+### `triggerCheck()`
+
+Позволяет реализовать любую проверку. Принимает на вход `Predicate` с полученным сообщением.
+
+### `triggerPhrase()`
+
+## Ответ
\ No newline at end of file
diff --git a/documentation/spring/ru/docs/architecture/concept.md b/documentation/spring/ru/docs/architecture/unit/answer-check.md
similarity index 100%
rename from documentation/spring/ru/docs/architecture/concept.md
rename to documentation/spring/ru/docs/architecture/unit/answer-check.md
diff --git a/documentation/spring/ru/docs/architecture/unit/answer-text.md b/documentation/spring/ru/docs/architecture/unit/answer-text.md
new file mode 100644
index 0000000..e69de29
diff --git a/documentation/spring/ru/docs/getting-started/hello-godfather.md b/documentation/spring/ru/docs/getting-started/hello-godfather.md
index e284e77..759d02a 100644
--- a/documentation/spring/ru/docs/getting-started/hello-godfather.md
+++ b/documentation/spring/ru/docs/getting-started/hello-godfather.md
@@ -2,3 +2,64 @@
Начнем разработку бота с простого примера. Поздороваемся с пользователем.
+## Регистрация бота
+
+Сначала нужно зарегистрировать бота и получить токен в Telegram.
+
+[:robot: Зарегистрировать бота](@BotFather){ .md-button }
+
+
+## Зависимости
+
+--8<-- ".dependencies.md"
+
+## Конфигурация
+
+Теперь необходимо указать данные для подключения к боту в Telegram.
+
+``` yaml title="application.yml"
+telegram:
+ bot:
+ username: username_bot
+ token: your_token
+```
+
+### Прокси
+Если телеграм заблокирован у вашего хостера/провайдера, вы можете использовать прокси
+
+``` yaml title="application.yml" hl_lines="5-11"
+telegram:
+ bot:
+ username: username_bot
+ token: your_token
+ proxy:
+ enable: true
+ host: PROXY_HOST
+ port: PROXY_PORT
+ type: PROXY_TYPE
+ user: PROXY_USERNAME
+ password: PROXY_PASSWORD
+```
+
+## Первый юнит
+
+Теперь создаем класс конфигурации юнитов и добавляем первый юнит (1).
+{ .annotate }
+
+1. Юниты это базовая сущность фреймворка
+
+``` java
+@Component
+public class GeneralMenu implements UnitConfiguration {
+
+ @Unit(value = GENERAL_MENU, main = true)
+ public AnswerText generalMenu() {
+ return AnswerText.builder()
+ .answer(boxAnswer("Hello!"))
+ .build();
+ }
+
+}
+```
+
+Вот и все, можете запустить ваше приложение и написать боту в телеграм. Если вы все сделали правильно, то он ответит вам.
\ No newline at end of file
diff --git a/documentation/spring/ru/docs/index.md b/documentation/spring/ru/docs/index.md
index adb0536..2a441a1 100644
--- a/documentation/spring/ru/docs/index.md
+++ b/documentation/spring/ru/docs/index.md
@@ -8,77 +8,26 @@ hide:
Данный фреймворк обладает мощным API для создания диалоговых Telegram ботов.
+!!! note ""
+
+ Данный фреймворк имеет версии как для SpringBoot :simple-spring:, так и для Quarkus Reactive :simple-quarkus:.
+
+Посмотрите, как легко сделать Hello World:
+
+``` java
+@Component
+public class GeneralMenu implements UnitConfiguration {
+
+ @Unit(value = GENERAL_MENU, main = true)
+ public AnswerText generalMenu() {
+ return AnswerText.builder()
+ .answer(boxAnswer("Hello, World!"))
+ .build();
+ }
+
+}
+```
+
## Добавляем зависимости
-Данный фреймворк имеет версии как для SpringBoot :simple-spring:, так и для Quarkus Reactive :simple-quarkus:.
-
-Чтобы начать, выберете соответствующую вкладку и добавьте зависимости в свой проект.
-
-=== ":simple-spring: SpringBoot"
-
- Используйте стартер, чтобы быстро начать разработку
-
- === ":simple-apachemaven: Maven"
-
- ``` xml
-
-
- dev.struchkov.godfather.telegram
- telegram-bot-spring-boot-starter
- 0.0.51
-
-
- ```
-
- === ":simple-gradle: Gradle"
-
- ``` groovy
- // https://mvnrepository.com/artifact/dev.struchkov.godfather.telegram/telegram-bot-spring-boot-starter
- implementation 'dev.struchkov.godfather.telegram:telegram-bot-spring-boot-starter:0.0.51'
- ```
-
-=== ":simple-quarkus: Quarkus Reactive"
-
- Реактивная версия
-
- !!! question "Почему нe extension?"
-
- Все будет, но не сразу :wink:
-
- === ":simple-apachemaven: Maven"
-
- ``` xml
-
-
- dev.struchkov.godfather.telegram
- telegram-consumer-quarkus
- 0.0.51
-
-
-
-
- dev.struchkov.godfather.telegram
- telegram-core-quarkus
- 0.0.51
-
-
-
-
- dev.struchkov.godfather.telegram
- telegram-sender-quarkus
- 0.0.51
-
- ```
-
- === ":simple-gradle: Gradle"
-
- ``` groovy
- // https://mvnrepository.com/artifact/dev.struchkov.godfather.telegram/telegram-consumer-quarkus
- implementation 'dev.struchkov.godfather.telegram:telegram-consumer-quarkus:0.0.51'
-
- // https://mvnrepository.com/artifact/dev.struchkov.godfather.telegram/telegram-core-quarkus
- implementation 'dev.struchkov.godfather.telegram:telegram-core-quarkus:0.0.51'
-
- // https://mvnrepository.com/artifact/dev.struchkov.godfather.telegram/telegram-sender-quarkus
- implementation 'dev.struchkov.godfather.telegram:telegram-sender-quarkus:0.0.51'
- ```
\ No newline at end of file
+--8<-- ".dependencies.md"
\ No newline at end of file
diff --git a/documentation/spring/ru/mkdocs.yml b/documentation/spring/ru/mkdocs.yml
index f6328eb..8bf7ceb 100644
--- a/documentation/spring/ru/mkdocs.yml
+++ b/documentation/spring/ru/mkdocs.yml
@@ -14,6 +14,12 @@ nav:
- Поддержать разработку: support-development.md
- ChangeLog:
- changelog/index.md
+ - Архитектура:
+ - Основная идея: architecture/general.md
+ - Юниты:
+ - architecture/unit.md
+ - architecture/unit/answer-text.md
+ - architecture/unit/answer-check.md
theme:
name: material