Для команд, модернизирующих стек

Мигрируйте фреймворки
без хаоса

Миграции фреймворков проваливаются, когда старые паттерны возвращаются. diffray применяет новые паттерны на каждом PR, держа миграцию на курсе.

React (CRA)Next.js
ExpressFastify
RESTGraphQL
Class ComponentsHooks

Почему миграции проваливаются

Дело не в миграции. Дело в поддержании.

Старые привычки умирают с трудом

Разработчики продолжают использовать старые паттерны по инерции. Новый код использует старые соглашения.

Несогласованная кодовая база

Половина мигрирована, половина legacy. Нет чёткой границы. Новые фичи используют случайный микс паттернов.

Регрессия к старому

Мигрированные области загрязняются старыми паттернами. Прогресс откатывается без постоянной бдительности.

Пробелы в знаниях

Не все одинаково знают новый фреймворк. Качество зависит от того, кто писал код.

Миграция, которая закрепляется

AI гарантирует, что новые паттерны остаются новыми

Применение паттернов

Определите паттерны нового фреймворка как правила. AI применяет их на каждом PR, автоматически ловя старые привычки.

"Используйте server components для получения данных. Client components только для интерактивности."

Управление границами

Определите, какие директории мигрированы. Старые паттерны разрешены в legacy-зонах, заблокированы в новых.

"Этот файл в /app (мигрировано). Используйте паттерны App Router, не Pages Router."

Руководство по миграции

AI объясняет, как конвертировать старые паттерны в новые. Каждое ревью — это обучающий момент.

"Замените getServerSideProps на async Server Component. См. руководство: /docs/migration.md"

Отслеживание прогресса

Видьте, какая часть кодовой базы мигрирована. Празднуйте прогресс, выявляйте отстающих.

"73% компонентов мигрировано на hooks. 12 class components осталось в /legacy."

Популярные миграции, которые мы поддерживаем

React (CRA)Next.js

Pages Router → App Router

ExpressFastify

Middleware → Plugins

RESTGraphQL

Endpoints → Resolvers

Class ComponentsHooks

lifecycle → useEffect

CommonJSES Modules

require → import

Vue 2Vue 3

Options API → Composition API

Вопросы и ответы

Модернизируйте.
Оставайтесь современными.

Мигрируйте один раз. Применяйте навсегда.

Начать бесплатно