✅ API для генерации PDF (/api/generate-pdf.js)
- Использует puppeteer-core + @sparticuz/chromium
- Генерирует PDF идентичный Electron версии
- Возвращает base64 для скачивания и загрузки в Drive
✅ Загрузка в Google Drive из веба
- OAuth2 через popup окно
- Прямая загрузка через Google Drive API
- Файлы загружаются в ту же папку что и в Electron
# Убедитесь что зависимости установлены
npm install# Установите Vercel CLI (если нет)
npm i -g vercel
# Залогиньтесь
vercel login
# Задеплойте
vercel --prodИЛИ через GitHub:
- Закоммитьте изменения:
git add .
git commit -m "Add web PDF export and Google Drive upload"
git push- Vercel автоматически подхватит изменения
После деплоя проверьте:
- ✅ Главная страница загружается
- ✅ Можно создать отчёт
- ✅ Кнопка "Скачать PDF" работает (генерирует через API)
- ✅ Кнопка "Google Drive" работает (запрашивает OAuth, загружает)
- В вебе: API endpoint
/api/generate-pdf(puppeteer на сервере) - В Electron:
printToPDF(локально) - Результат идентичный!
- В вебе: OAuth через popup + прямая загрузка через Google Drive API
- В Electron: OAuth через Electron Google OAuth2 + googleapis
- Файлы попадают в одну папку!
- Timeout: 30 секунд (достаточно для PDF)
- Memory: 3008 MB (хватает для Puppeteer)
- Free tier: 100GB bandwidth/месяц
- Проверьте логи в Vercel Dashboard
- Убедитесь что
@sparticuz/chromiumустановлен - Проверьте что
htmlContentне слишком большой (< 10MB)
- Убедитесь что
CLIENT_IDправильный - Добавьте ваш домен в Google Cloud Console (Authorized JavaScript origins)
- Разрешите popup окна в браузере
- Уменьшите размер изображений в отчёте
- Проверьте что API не делает лишних запросов