Оболонка Weblate

Поточну версію оболонки побудовано з використанням Bootstrap, jQuery і декількох сторонніх бібліотек.

Керування залежностями

Для оновлення сторонніх бібліотек використовується програма для керування пакунками yarn. Налаштування цієї програми зберігаються scripts/yarn. Існує скрипт-обгортка scripts/yarn-update для оновлення бібліотек, збирання їх і копіювання до належних каталогів у weblate/static/vendor, де зберігається увесь код сторонніх бібліотек.

Стиль програмного коду

Weblate використовує для форматування коду у файлах JavaScript і CSS Prettier.

Ми також використовуємо ESLint для перевірки коду JavaScript.

Локалізація

Якщо вам потрібен будь-який видимий користувачеві текст у коді бібліотеки, цей текст має бути локалізовано. У більшості випадків вам достатньо огорнути ваш текст у функцію gettext, але доступними є і складніші можливості:

document.write(gettext('this is to be translated'));

var object_count = 1 // or 0, or 2, or 3, ...
s = ngettext('literal for the singular case',
        'literal for the plural case', object_count);

fmts = ngettext('There is %s object. Remaining: %s',
        'There are %s objects. Remaining: %s', 11);
s = interpolate(fmts, [11, 20]);
// s is 'There are 11 objects. Remaining: 20'

Піктограми

Поточна версія Weblate використовує піктограми material design. Якщо вам потрібна якась нова піктограма, скористайтеся <https://materialdesignicons.com/>.

Крім того, можна скористатися scripts/optimize-svg для зменшення розміру SVG, оскільки більшість піктограм вбудовуються до HTML для уможливлення застосування стилю до контурів.