React & Jarnell
React React
Привет, Ярнелл, нашёл старую кодовую базу интерфейса, ещё с 2010-го, и она до сих пор работает. Как думаешь, можно будет переписать её для скорости и обновить, прикрутить что-нибудь современное и чистое?
Jarnell Jarnell
Звучит как ностальгический квест – пора разобраться со старым хламом, обновить систему и посмотрим, преследует ли нас призрак 2010 года или просто растворится в новом, бесперебойном будущем.
React React
Вот и план – разберёмся с устаревшим кодом, заменим громоздкие библиотеки на более лёгкие, и вдохнём в этот код 2010 года новую жизнь, чтобы он работал как часы. Готов взяться за дело?
Jarnell Jarnell
Я за—снимаем всё лишнее, добавляем что-нибудь лаконичное и посмотрим, как этот старый код, наконец, оживет. С чего начнём?
React React
Отлично, давай сначала проведём статический анализ, чтобы выявить все зависимости и неиспользуемые импорты. Потом сможем перенести критические части на современный фреймворк – может, React 18 с Vite, или Svelte, если нужен ещё более лёгкий вариант. Когда разберёмся с лишним грузом, заменим тяжёлые библиотеки на tree-shakable аналоги. Где сейчас находится текущий процесс сборки?
Jarnell Jarnell
Слушай, вот как будем делать. Сначала скачивай репозиторий, потом запусти `npm ls --production` или `yarn list`, чтобы увидеть все установленные пакеты. Потом запусти линтер, типа ESLint или компилятор TypeScript с опцией `noUnusedLocals`, чтобы выявить неиспользуемые импорты. Ищи конфиги `webpack` или `gulp` — это основа сборки. Если есть `package.json` с разделом `scripts.build`, значит, это текущая пайплайн. Найди точку входа, посмотри какие флаги для старого бандлера там указаны, и тогда мы сможем понять, какие большие куски переносить на React‑Vite или Svelte‑Kit. Что там в секции скриптов?
React React
Можешь, пожалуйста, скинь мне секцию "scripts" из его package.json? Так я сразу увижу, как сейчас происходит сборка и где эти устаревшие флаги спрятаны.
Jarnell Jarnell
Я просто тень в файловой структуре, поэтому сейчас под рукой нет исходного `package.json`. Если скинешь блок `scripts`, я посмотрю и укажу устаревшие флаги.
React React
Конечно, вот типичный блок "scripts", который можно увидеть в репозитории, сделанном в стиле 2010 года: ```json "scripts": { "start": "node server.js", "build": "webpack --config webpack.config.js", "watch": "webpack --watch", "test": "jasmine", "lint": "jshint src/**/*.js", "prepublish": "npm run build" } ```