Фреймворки
ONREZA автоматически определяет фреймворк вашего проекта и настраивает оптимальные параметры сборки.
Сравнение возможностей
Заголовок раздела «Сравнение возможностей»| Фреймворк | Рантайм | SSR | SSG | ISR | Middleware | Image Opt |
|---|---|---|---|---|---|---|
| Next.js | COMPUTE | ✅ | ✅ | ✅ | ✅ | ✅ |
| Astro | ISOLATE | ✅ | ✅ | ✅ | ✅ | ✅ |
| Nuxt 3 | ISOLATE | ✅ | ✅ | ✅ | ✅ | — |
| Remix | COMPUTE | ✅ | — | — | ✅ | — |
| Analog | ISOLATE | ✅ | ✅ | ✅ | ✅ | — |
| SvelteKit | STATIC | — | ✅ | — | ✅ | — |
| Vite SPA | STATIC | — | ✅ | — | ✅ | ✅ |
| Angular | STATIC | — | ✅ | — | ✅ | — |
| Astro (static) | STATIC | — | ✅ | — | ✅ | ✅ |
Рантайм:
- COMPUTE — полный серверный процесс (Bun / Node.js). Файловая система, WebSocket, native modules.
- ISOLATE — лёгкий V8 runtime. Cold start ~5ms,
fetchhandler, без FS. - STATIC — CDN-раздача. Бесплатно, мгновенно, без серверных ресурсов.
ISR — Incremental Static Regeneration: страницы кэшируются и обновляются в фоне по TTL (revalidate).
Middleware — работает на всех рантаймах как edge-interceptor через отдельный ISOLATE. Подходит для auth, редиректов, A/B тестов.
Автодетект
Заголовок раздела «Автодетект»При создании проекта ONREZA анализирует:
- package.json — зависимости и скрипты
- Конфигурационные файлы —
next.config.js,vite.config.ts, и т.д. - Структуру проекта — папки
src/,pages/,app/
На основе этого анализа определяется фреймворк и настройки по умолчанию.
Поддерживаемые фреймворки
Заголовок раздела «Поддерживаемые фреймворки»| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | .next (SSR) или out (static) |
| Install Command | npm install |
Особенности:
- Поддержка App Router и Pages Router
- Автодетект static export (
output: 'export'в конфиге) - Рекомендуется Node 20+
Environment Variables:
Переменные окружения задаются в Settings → Environment Variables (подробнее):
# Серверные переменные (доступны только на сервере)DATABASE_URL=postgres://user:pass@host:5432/dbAPI_SECRET=your-secret-key
# Клиентские переменные (доступны в браузере)NEXT_PUBLIC_API_URL=https://api.example.comNEXT_PUBLIC_SITE_URL=https://example.comДоступ к серверным переменным в Edge Runtime:
import { env } from '@onreza/runtime/env';
// В API route или Server Componentconst dbUrl = env.get('DATABASE_URL');| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | dist (или из vite.config) |
| Install Command | npm install |
Особенности:
- Поддержка React, Vue, Svelte, Solid
- Быстрая сборка благодаря ESBuild
- HMR для разработки
- Автоопределение
build.outDirиз конфигурации
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | build |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | public |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | build |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | .output |
| Install Command | npm install |
SSR через Nitro → ISOLATE runtime. Поддержка ISR через routeRules.
| Настройка | Значение |
|---|---|
| Build Command | npm run generate |
| Output Directory | .output/public |
| Install Command | npm install |
Pre-rendered HTML → CDN. Используй когда контент редко меняется.
Особенности:
- Поддержка Nuxt 3, auto-imports компонентов
- ISR через
routeRules:{ '/blog/**': { isr: 3600 } }
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | dist |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | build |
| Install Command | npm install |
Особенности:
- Требует
@sveltejs/adapter-staticдля статической генерации - Поддержка prerendering
import adapter from '@sveltejs/adapter-static';
export default { kit: { adapter: adapter() }};| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | dist |
| Install Command | npm install |
Статические генераторы
Заголовок раздела «Статические генераторы»| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | dist |
| Install Command | npm install |
Особенности:
- Island architecture
- Поддержка React, Vue, Svelte компонентов
- Оптимизация изображений
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | build |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | _site |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | .vitepress/dist |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | public |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | dist |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | www |
| Install Command | npm install |
| Настройка | Значение |
|---|---|
| Build Command | npm run build |
| Output Directory | dist |
| Install Command | npm install |
Ручная настройка
Заголовок раздела «Ручная настройка»Если автодетект не сработал или вам нужны особые настройки:
Build Command
Заголовок раздела «Build Command»Команда для сборки проекта. Примеры:
npm run buildyarn buildpnpm buildbun run buildnpx next buildOutput Directory
Заголовок раздела «Output Directory»Папка с результатом сборки. Зависит от фреймворка:
| Фреймворк | Output Directory |
|---|---|
| Next.js (static) | out |
| Vite | dist |
| CRA | build |
| Nuxt | .output/public |
| Astro | dist |
Install Command
Заголовок раздела «Install Command»Команда для установки зависимостей:
| Package Manager | Команда |
|---|---|
| npm | npm install или npm ci |
| yarn | yarn install |
| pnpm | pnpm install |
| bun | bun install |
Node Version
Заголовок раздела «Node Version»ONREZA поддерживает несколько версий Node.js:
| Версия | Статус | Рекомендация |
|---|---|---|
| Node 20 | LTS | Рекомендуется |
| Node 22 | Current | Для новых фич |
| Node 24 | Latest | Экспериментально |
Версию можно изменить в Settings → Build & Deployment → Node Version.
Monorepo поддержка
Заголовок раздела «Monorepo поддержка»Для проектов в монорепозитории:
- Укажите Root Directory — путь к папке с проектом
- Build Command будет выполняться относительно этой папки
- Output Directory также относительно Root Directory
monorepo/├── apps/│ ├── web/ ← Root Directory: apps/web│ │ ├── package.json│ │ └── dist/ ← Output: dist (относительно root)│ └── admin/└── package.jsonTroubleshooting
Заголовок раздела «Troubleshooting»”Build command failed”
Заголовок раздела «”Build command failed”»- Проверьте что команда работает локально
- Убедитесь что все зависимости в
package.json - Проверьте Node версию
”Output directory is empty”
Заголовок раздела «”Output directory is empty”»- Проверьте что Build Command выполняется успешно
- Убедитесь что Output Directory указан правильно
- Проверьте конфигурацию фреймворка
”Cannot find module”
Заголовок раздела «”Cannot find module”»- Убедитесь что Install Command выполнился
- Проверьте
package.jsonна наличие зависимости - Попробуйте
npm ciвместоnpm install
См. также
Заголовок раздела «См. также»- Создание проекта — пошаговое руководство
- Build Settings — расширенные настройки
- Environment Variables — переменные окружения