Исходный код Weblate

Weblate разрабатывается на GitHub’е. Вы можете создавать форки и открывать запросы на извлечение. Патчи в любой другой форме также приветствуются.

См.также

Чтобы понять, как Weblate устроен изнутри, посмотрите раздел Внутреннее устройство Weblate.

Рекомендации по написанию кода

Любой код для Weblate’а должен писаться с оглядкой на Принципы «безопасности по проектированию» (Security by Design).

Весь код должен сопровождаться документацией, поясняющей его работу. Не забывайте документировать методы, сложные блоки кода и функционал, доступный пользователям.

Любой новый код должен использовать подсказки типа PEP 484. Мы пока не проверяем это в нашем CI, поскольку существующий код их ещё не включает.

Стандарт и стиль программирования

Код должен соответствовать правилам кодирования PEP-8 и быть отформатирован с помощью форматера кода ruff.

Для проверки качества кода можно использовать ruff, её конфигурация хранится в pyproject.toml.

The easiest approach to enforce all this is to install pre-commit. The repository contains configuration for it to verify the committed files are sane. After installing it (it is already included in the pyproject.toml) turn it on by running pre-commit install in Weblate checkout. This way all your changes will be automatically checked.

Также вы можете запустить эту проверку вручную, чтобы проверить все файлы, запустите:

pre-commit run --all