# Stalwart WebUI на русском, оформление StackWorks Форк [stalwartlabs/webui](https://github.com/stalwartlabs/webui) (AGPL-3.0) для почтового сервера StackWorks mail.stackworks.ru. Отличия от оригинала: - язык всегда русский: `src/i18n/ru.json` для строк самого интерфейса и `src/i18n/schema-ru.json` для схемы, которую присылает сервер (названия разделов, полей, описания); перевод схемы делает `src/i18n/schemaRu.ts` прямо при загрузке, ключ `name` переводится только в меню (layouts), в остальных местах это идентификаторы полей и значений; - оформление StackWorks: палитра и шрифты в `src/index.css`, логотип в `src/components/common/Logo.tsx`, тёмные верхняя полоса и боковое меню (классы sw-top, sw-aside, sw-active). ## Перевод Рабочие файлы в `i18n-work/`: схема сервера `schema-0.16.25.json`, части перевода `part*.ru.json`, ручные правки `overrides.ru.json` (падежи названий: единственное число в винительном для «Создать/Изменить/Удалить …», множественное в родительном для «Показано 1-9 из …»), глоссарий `GLOSSARY.md`. Склейка: `python3 i18n-work/merge.py`. После обновления сервера Stalwart новые строки схемы останутся английскими: выгрузить новую схему (`/api/schema/...` из браузера), найти строки без перевода, перевести и пересобрать. ## Выкладка `./release.sh` собирает интерфейс и выкладывает `webui.zip` в релиз `current` этого репозитория. Сервер берёт его по адресу из `x:Application.resourceUrl`: https://git.stackworks.ru/viktor/stalwart-webui-ru/releases/download/current/webui.zip и обновляет раз в 30 дней или сразу по действию `x:Action/set {"@type":"UpdateApps"}`.