feat(cli): add feedback form#1854
Open
a-shulman wants to merge 1 commit intodiplodoc-platform:masterfrom
Open
Conversation
goldserg
reviewed
Apr 16, 2026
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: 22.21.1 | ||
| node-version: 22 |
Contributor
There was a problem hiding this comment.
please exclude all .github/* files from this PR
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Описание
Добавляется расширение для обратной связи по выделенному тексту. Когда пользователь выделяет текст на странице документации, появляется кнопка. По клику на кнопку - форма, где можно сообщить о проблеме:
Поле Комментарий обязательно для: another, non_relevant, no_example, не обязательно для: typo (опечатка), bad_graphics (плохая графика). Поле Контакт необязательно.
Если расширение включено и настроено, форма отправляет данные на настраиваемый HTTP-эндпоинт + можно навесить счетчики яндекс-метрики на кнокпи (реализовано просто потому, что это у нас уже так работает и нам это нужно).
Если расширение не настроено — оно ничего не делает: скрипты не инжектируются, файлы не копируются.
Что добавлено
Использование
Короткая форма — только URL эндпоинта, через CLI-флаг:
diplodoc build -i ./docs -o ./build --text-feedback https://example.com/feedbackЧерез конфиг .yfm:
Что инжектируется в каждую HTML-страницу:
Также добавляется CSP-директива connect-src для origin'а эндпоинта.
Как работает
Формат payload'а (POST JSON)
P.S. PR вырос из расширения, которое работает уже на нашем сайте (https://docs.ideco.ru/), поэтому некоторые вещи в нем обусловлены именно нашими потребностями. Также важное пояснение: почти весь код расширения нашего и этого пулл-реквеста написан с помощью нейросетей.