Сервис для создания и генерации обложек YouTube видео с помощью AI.
frontend/- React приложение с редактором коллажейbackend/- Go сервер с интеграцией Nano Banana Edit и OpenAI
- Перейдите в директорию frontend:
cd frontend- Установите зависимости:
npm install- Запустите dev сервер:
npm run devFrontend будет доступен на http://localhost:3000
- Перейдите в директорию backend:
cd backend- Установите зависимости:
go mod download- Создайте файл
.env:
touch .env- Добавьте API ключи в
.env:
# Nano Banana API (обязательно)
NANO_BANANA_API_KEY=your_nano_banana_api_key_here
# OpenAI API (опционально, как альтернатива)
OPENAI_API_KEY=your_openai_api_key_here
# Google OAuth (для авторизации)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GOOGLE_REDIRECT_URL=http://localhost:8080/api/auth/callback
SESSION_SECRET=your_random_secret_key_here
# Redis configuration (опционально, по умолчанию localhost:6379)
REDIS_ADDR=localhost:6379
REDIS_PASSWORD=
# Порт сервера
PORT=8080
# Публичный URL (обязательно для работы с Nano Banana)
BASE_URL=http://localhost:8080
FRONTEND_URL=http://localhost:3000
Получение API ключей:
- Nano Banana: Посетите https://kie.ai/api-key, создайте аккаунт и получите API ключ
Настройка Google OAuth:
- Перейдите в Google Cloud Console
- Создайте проект и включите Google+ API
- Создайте OAuth 2.0 credentials (Web application)
- Добавьте redirect URI:
http://localhost:8080/api/auth/callback - Скопируйте Client ID и Client Secret в
.env
Установка Redis:
- macOS:
brew install redis && brew services start redis - Linux:
sudo apt-get install redis-server && sudo systemctl start redis - Docker:
docker run -d -p 6379:6379 redis
- Запустите сервер:
go run main.goBackend будет доступен на http://localhost:8080
- Перейдите в директорию backend и подготовьте
.env(можно взять.env.example). - Соберите образ:
docker build -t coverflow-backend ./backend
- Запустите контейнер:
docker run --env-file backend/.env \ -p 8080:8080 \ -v $(pwd)/backend/data:/srv/app/data \ -v $(pwd)/backend/storage:/srv/app/storage \ coverflow-backend
Контейнер использует образ golang:latest, поэтому внутри доступна последняя версия Go. Для работы также нужен Redis, запущенный отдельно и доступный по адресу, указанному в .env.
- Откройте frontend в браузере (http://localhost:3000)
- Загрузите изображения для создания коллажа
- Расположите изображения на холсте (перетаскивание, изменение размера)
- Выберите провайдера (Nano Banana или OpenAI) в выпадающем списке
- Нажмите "Сгенерировать обложку"
- Дождитесь завершения генерации (может занять несколько минут для Nano Banana)
- Получите AI-сгенерированную обложку и скачайте её
- React 18
- TypeScript
- Vite
- Tailwind CSS
- shadcn/ui
- Konva.js (для редактора коллажей)
- Go 1.21+
- Gin (HTTP framework)
- Nano Banana Edit API (основной провайдер)
- OpenAI API (DALL-E 3, альтернативный провайдер)