Используемые технологии#

Sphinx#

Sphinx – инструмент для создания и генерации документации в различных форматах. Этот сайт тоже создан с помощью Sphinx.

Расширения Sphinx#

В проекте используются расширения Sphinx.

  • sphinx_tabs.tabs: Позволяет создавать вкладки с различным содержанием в документации, что делает ее более интерактивной и информативной.

  • sphinx.ext.graphviz: Позволяет использовать в документации графику, созданную с помощью Graphviz.

  • sphinxcontrib.plantuml: Интегрирует PlantUML со Sphinx.

  • sphinxcontrib.googleanalytics: Интегрирует Google Analytics со Sphinx для сбора статистики о посещении документации.

Ссылки:

ReStructured Text (RST)#

ReStructured Text (RST) – язык разметки, используемый в Sphinx для написания документации. Он предоставляет простой и понятный синтаксис для структурирования текста и включения различных элементов документации.

PlantUML#

PlantUML – инструмент для создания графических диаграмм, таких как диаграммы классов, диаграммы последовательности и другие. С помощью дополнения интегрируется со Sphinx и позволяет вставлять графические диаграммы в документацию. Мы используем PlantUML для визуализации структуры и взаимодействия компонентов в нашей документации, например, для структурной схемы проекта.

Git#

Git – система контроля версий, используемая для управления файлами проекта.

Официальный сайт Git.

GitHub#

GitHub – это платформа для хранения и управления исходным кодом и документацией проекта. Мы используем GitHub для хранения всех файлов проекта, включая исходный код документации и исходный код самого проекта.

CI/CD с использованием GitHub Actions#

Для автоматизации процесса сборки и развертывания (CD/CD) документации мы используем GitHub Actions. Это позволяет нам автоматически обновлять документацию при каждом коммите в репозиторий и выпускать новые версии документации при необходимости.

Google Analytics#

Для сбора статистики о посещении сайта мы используем Google Analytics. Этот инструмент собирает информацию о том, как пользователи взаимодействуют с сайтом: на какие страницы переходят, где проводят больше времени, а где меньше, совпадают ли их впечатления от контента с ожиданиями от результатов поисковой выдачи и так далее.

Docker#

Docker – средство запуска контейнеризованных приложений.

Мы используем его для сборки и тестирования документации в преднастроенном окружении, одинаковом для всех участников проекта. Это позволяет значительно упростить и сократить по времени процесс настройки рабочего окружения – достаточно загрузить нужный образ и выполнить несколько команд.