Добавлен русский язык + исправлены критические баги

🌍 Интернационализация:
- Добавлен русский язык в i18n.ts (supportedLngs)
- Русский пункт меню в NavBar.tsx (desktop + mobile)
- Полная локализация страницы RobotCreate.tsx
- Расширен ru.json: robotCreate (60+ ключей) + mainmenu

🐛 Исправления:
- PostCSS баг в vite.config.js (css.postcss: false → { plugins: [] })
- Backend URL конфигурация (8081 вместо 8080)
- API ключи теперь генерируются корректно

🔧 Конфигурация:
- docker-compose.yml: host network mode
- Dockerfile.frontend обновлен
- Добавлены postcss конфиги

 Все сервисы работают:
- Frontend: http://localhost:5174
- Backend: http://localhost:8081
- PostgreSQL: 5433
- MinIO: 9020/9021
This commit is contained in:
Vodorod
2026-02-19 18:32:00 +03:00
parent f98e5c88fe
commit 2ce029534e
10 changed files with 177 additions and 57 deletions

View File

@@ -55,6 +55,14 @@
"deleteFailed": "Не удалось удалить робота",
"search": "Поиск роботов..."
},
"mainmenu": {
"recordings": "Роботы",
"runs": "Запуски",
"proxy": "Прокси",
"apikey": "API ключ",
"feedback": "Присоединиться к Maxun Cloud",
"apidocs": "Веб-сайт в API"
},
"recordingpage": {
"stopRecording": "Остановить запись",
"recording": "Запись...",
@@ -375,5 +383,86 @@
"created": "Создано",
"sent": "Отправлено",
"copied": "Скопировано"
},
"robotCreate": {
"title": "Создать нового робота",
"tabs": {
"extract": "Извлечь",
"scrape": "Скрейпинг",
"crawl": "Обход",
"search": "Поиск"
},
"chooseMode": "Выберите способ создания",
"modes": {
"recorder": {
"title": "Режим записи",
"description": "Запишите свои действия в рабочий процесс"
},
"ai": {
"title": "AI режим",
"description": "Опишите задачу. Он создаст её для вас",
"label": "Beta"
}
},
"extract": {
"description": "Извлекайте структурированные данные с веб-сайтов используя AI или записывайте свой собственный процесс извлечения",
"websiteUrl": "URL веб-сайта",
"websiteUrlOptional": "URL веб-сайта (необязательно)",
"websiteUrlPlaceholder": "Например: https://www.ycombinator.com/companies/",
"startRecording": "Начать запись",
"starting": "Запуск...",
"name": "Название",
"namePlaceholder": "Название",
"aiPrompt": "Промпт для извлечения",
"aiPromptPlaceholder": "Например: Извлечь первые 15 названий компаний, описания и информацию о партиях",
"aiExample": "Например: 'Извлечь названия продуктов, цены и рейтинги'",
"llmProvider": "LLM Провайдер",
"llmProviderOllama": "Ollama (Локально)",
"llmProviderAnthropic": "Anthropic (Claude)",
"llmProviderOpenAI": "OpenAI (GPT-4)",
"model": "Модель",
"modelDefault": "По умолчанию (llama3.2-vision)",
"ollamaBaseUrl": "Ollama Base URL (необязательно)",
"generate": "Создать робота",
"generating": "Создание...",
"createAndRun": "Создать и запустить робота",
"creatingAndRunning": "Создание и запуск...",
"apiKey": "API ключ (необязательно, если установлен в .env)",
"apiKeyPlaceholder": "API ключ"
},
"scrape": {
"description": "Скрейпить весь контент страницы в различных форматах",
"websiteUrl": "URL веб-сайта",
"robotName": "Название робота (необязательно)",
"outputFormats": "Форматы вывода",
"createRobot": "Создать робота",
"creating": "Создание..."
},
"crawl": {
"description": "Обходить веб-сайт и извлекать данные с нескольких страниц",
"websiteUrl": "URL веб-сайта",
"robotName": "Название робота (необязательно)",
"maxPages": "Максимум страниц для обхода",
"maxDepth": "Максимальная глубина обхода",
"includePaths": "Включить пути (через запятую, необязательно)",
"excludePaths": "Исключить пути (через запятую, необязательно)",
"createRobot": "Создать робота",
"creating": "Создание...",
"advancedOptions": "Дополнительные опции"
},
"search": {
"description": "Искать информацию в интернете используя AI",
"query": "Поисковой запрос",
"queryPlaceholder": "О чём вы хотите узнать?",
"robotName": "Название робота (необязательно)",
"createRobot": "Создать поискового робота",
"creating": "Создание..."
},
"errors": {
"urlRequired": "URL обязателен",
"queryRequired": "Поисковой запрос обязателен",
"failedToStart": "Не удалось начать запись. Попробуйте снова",
"failedToCreate": "Не удалось создать робота"
}
}
}