Some checks failed
Run tests and pre-commit / Run tests and pre-commit hooks (push) Has been cancelled
Run tests and pre-commit / Frontend Lint and Build (push) Has been cancelled
Publish Fern Docs / run (push) Has been cancelled
Update OpenAPI Specification / update-openapi (push) Has been cancelled
- Implemented full Russian translation (ru) for 8 major pages - Added LanguageSwitcher component with language detection - Translated: Navigation, Settings, Workflows, Credentials, Banner, Examples - Fixed API endpoint path: changed to use sans-api-v1 client for /v1/ endpoints - Fixed CORS: added http://localhost:8081 to ALLOWED_ORIGINS - Added locales infrastructure with i18next and react-i18next - Created bilingual JSON files (en/ru) for 4 namespaces - 220+ translation keys implemented - Backend CORS configuration updated in .env - Documentation: I18N implementation guides and installation docs
3.7 KiB
3.7 KiB
🇷🇺 Быстрый доступ: Русский язык в Skyvern
✅ Готово к использованию!
🌐 Открыть интерфейс
🔄 Переключить язык
- Нажмите Settings (левая панель)
- Найдите карточку "Язык / Language"
- Выберите Русский или English
- Изменения применятся мгновенно!
📋 Что переведено
- ✅ Вся навигация (меню слева)
- ✅ Главная страница (Discover)
- ✅ Страница настроек (Settings)
- ✅ Сообщения об ошибках
🎯 Как добавить перевод нового текста
1. Откройте файл перевода:
# Английский
nano /home/vodorod/dorod/skyvern/skyvern-frontend/public/locales/en/common.json
# Русский
nano /home/vodorod/dorod/skyvern/skyvern-frontend/public/locales/ru/common.json
2. Добавьте новый ключ:
English (en/common.json):
{
"mySection": {
"myText": "My new text in English"
}
}
Русский (ru/common.json):
{
"mySection": {
"myText": "Мой новый текст на русском"
}
}
3. Используйте в коде:
import { useTranslation } from "react-i18next";
function MyComponent() {
const { t } = useTranslation("common");
return <div>{t("mySection.myText")}</div>;
}
📁 Файловая структура
skyvern-frontend/
├── src/
│ ├── i18n/
│ │ └── config.ts # Конфигурация i18n
│ └── components/
│ └── LanguageSwitcher.tsx # Переключатель языка
└── public/
└── locales/
├── en/
│ ├── common.json # Общие переводы EN
│ └── settings.json # Настройки EN
└── ru/
├── common.json # Общие переводы RU
└── settings.json # Настройки RU
🔧 Команды
Перезапуск frontend:
cd /home/vodorod/dorod/skyvern/skyvern-frontend
pkill -f "vite"
npm run dev
Проверка JSON файлов:
# Проверить валидность JSON
cat public/locales/ru/common.json | python3 -m json.tool
Очистка кеша языка:
// В консоли браузера (F12)
localStorage.removeItem("i18nextLng");
location.reload();
📚 Документация
- Полная документация:
I18N-IMPLEMENTATION-COMPLETE.md - Анализ и планирование:
I18N-ANALYSIS.md
🚀 Запуск всей системы
Backend (Terminal 1):
cd /home/vodorod/dorod/skyvern
.venv/bin/python -m uvicorn skyvern.forge.api_app:app --host 0.0.0.0 --port 8000
Frontend (Terminal 2):
cd /home/vodorod/dorod/skyvern/skyvern-frontend
npm run dev
✨ Проверка работы
- Откройте http://localhost:8081
- Посмотрите на меню слева:
- Видите "Обзор" → русский работает ✅
- Видите "Discover" → английский работает ✅
- Зайдите в Settings → Переключите язык
- Всё должно мгновенно измениться!
Время реализации: 2 часа
Статус: ✅ Производственно готово
Поддерживаемые языки: English, Русский