Вы создали React-приложение, добавили в него крутые функции, и теперь готовы показать его миру. Но как сделать так, чтобы ваше приложение заработало в интернете? В этой статье разберём, как подготовить React-приложение к деплою, разместить его на популярных платформах (Vercel, Netlify и GitHub Pages), и обсудим, как улучшить его производительность.

Теория: Подготовка приложения к продакшену

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

Создание сборки

React-приложения разрабатываются в режиме разработки (development mode), но для продакшена нужно создать сборку, которая:

  • Удаляет все инструменты отладки.
  • Минимизирует код (уменьшает его размер).
  • Оптимизирует производительность.

Для создания продакшен-сборки выполните:

npm run build

Команда создаст папку build, содержащую оптимизированную версию вашего приложения. Именно её мы будем деплоить.

Подготовка к деплою

Проверьте пути: Если ваше приложение работает не на корневом домене (например, на example.com/myapp), настройте homepage в package.json:

"homepage": "https://example.com/myapp"

Исправьте ошибки: Запустите тестовое окружение:

npm start

Убедитесь, что приложение работает корректно перед созданием сборки.

Оптимизация производительности

Прежде чем публиковать приложение, важно убедиться, что оно работает быстро. Вот несколько советов:

  • Код-сплиттинг: Разделяйте код на отдельные части, чтобы загружать только нужные модули. React поддерживает это из коробки через React.lazy и Suspense.
  • Сжатие изображений: Убедитесь, что изображения оптимизированы. Используйте форматы WebP или сжатые PNG/JPEG.
  • Использование CDN: Сервисы вроде Vercel и Netlify автоматически предоставляют CDN для быстрого доступа к вашему приложению по всему миру.

Анализ размера бандла: Используйте source-map-explorer, чтобы узнать, какие части кода занимают больше всего места:

npm install source-map-explorer
npm run build
npx source-map-explorer build/static/js/*.js

Деплой на популярных платформах

Существуют десятки платформ для размещения приложений, но мы рассмотрим три самых популярных: Vercel, Netlify и GitHub Pages.

Вариант 1: Деплой через Vercel

Vercel — это супербыстрая платформа для размещения фронтенд-приложений. Она проста в использовании, предоставляет автоматические деплои и CDN.

Шаги:

Установите Vercel CLI (необязательно):

npm install -g vercel

Авторизуйтесь в Vercel:

vercel login

Деплой проекта: В корне проекта выполните:

vercel

Следуйте инструкциям в терминале. Vercel автоматически определит, что это React-приложение, и задеплоит его.

Получите ссылку: После успешного деплоя Vercel предоставит URL вашего приложения, например: https://your-app.vercel.app.

Особенности:

  • Бесплатный тариф позволяет разместить неограниченное количество приложений.
  • Автоматическое обновление при пуше в репозиторий.

Вариант 2: Деплой через Netlify

Netlify — ещё одна популярная платформа для фронтенд-приложений с простым интерфейсом и мощными функциями.

Шаги:

Создайте учётную запись на Netlify. Перейдите на https://www.netlify.com/ и зарегистрируйтесь.

Перетащите папку build:

Создайте сборку:

npm run build

Перейдите в Netlify, выберите «Drag and Drop» и загрузите папку build.

Получите ссылку: Netlify автоматически задеплоит приложение и предоставит вам URL, например: https://your-app.netlify.app.

Автоматизация (опционально):

Свяжите Netlify с вашим репозиторием GitHub, чтобы каждый пуш автоматически обновлял приложение.

Особенности:

  • Бесплатный тариф с отличным функционалом.
  • Поддержка автоматического HTTPS.

Вариант 3: Деплой через GitHub Pages

GitHub Pages идеально подходит для небольших проектов и статических сайтов.

Шаги:

Установите gh-pages: Добавьте пакет для деплоя:

npm install gh-pages --save-dev

Обновите package.json: Добавьте в scripts:

"predeploy": "npm run build",
"deploy": "gh-pages -d build"

Убедитесь, что указано поле homepage:

"homepage": "https://<ваше-имя-пользователя>.github.io/<имя-репозитория>"

Запустите деплой: Выполните:

npm run deploy

Проверьте сайт: Через несколько минут приложение будет доступно по адресу https://<ваше-имя-пользователя>.github.io/<имя-репозитория>.

Особенности:

  • Бесплатно и без ограничений.
  • Простая настройка для статических приложений.

Практика: Деплой приложения

Шаг 1: Подготовка приложения

Создайте простое React-приложение с помощью Create React App:

npx create-react-app my-app
cd my-app

Добавьте несколько компонентов для демонстрации. Например:

function App() {
  return (
    <div style={{ textAlign: 'center', marginTop: '50px' }}>
      <h1>Моё первое приложение!</h1>
      <p>Это приложение задеплоено с помощью Vercel.</p>
    </div>
  );
}

export default App;

Шаг 2: Деплой через Vercel

Установите Vercel CLI:

npm install -g vercel

Выполните деплой:

vercel

Получите ссылку и поделитесь ей! 🎉

Мониторьте производительность: Используйте инструменты, такие как Lighthouse (в Chrome DevTools), чтобы проверить скорость загрузки, доступность и SEO.

Сжатие ресурсов:

  • Используйте react-image-compressor для оптимизации изображений.
  • Подключите шрифты через Google Fonts с минимальным набором символов.
  • Минимизируйте бандл: Убедитесь, что вы удалили все ненужные зависимости.

Итоги

Теперь вы знаете:

  • Как подготовить React-приложение к деплою.
  • Как разместить его на популярных платформах (Vercel, Netlify, GitHub Pages).
  • Как оптимизировать приложение для повышения производительности.

Попробуйте задеплоить ваше приложение и поделитесь ссылкой с друзьями!

 

Комментарии

0

Без регистрации и смс