# 🚀 Скрипты для перезапуска Web приложения ## 📋 Обзор Созданы два скрипта для удобного перезапуска Flutter Web приложения: - **`restart_web.sh`** - Полная пересборка с очисткой кэша - **`quick_restart.sh`** - Быстрый перезапуск без пересборки ## 🔧 Использование ### Полная пересборка (рекомендуется после изменений кода) ```bash # Использование с параметрами по умолчанию ./restart_web.sh # С указанием hostname и port ./restart_web.sh 192.168.31.142 8080 # С другим hostname ./restart_web.sh localhost 8080 ``` **Что делает:** 1. 🛑 Останавливает процесс на порту 2. 🧹 Очищает кэш Flutter (`flutter clean`) 3. 📦 Получает зависимости (`flutter pub get`) 4. 🔨 Пересобирает приложение (`flutter build web --release`) 5. 🚀 Запускает на указанном адресе ### Быстрый перезапуск (для тестирования) ```bash # Использование с параметрами по умолчанию ./quick_restart.sh # С указанием hostname и port ./quick_restart.sh 192.168.31.142 8080 ``` **Что делает:** 1. 🛑 Останавливает процесс на порту 2. 🚀 Быстро запускает приложение ## 📊 Сравнение скриптов | Функция | `restart_web.sh` | `quick_restart.sh` | |---------|------------------|-------------------| | Время выполнения | ~2-3 минуты | ~30 секунд | | Очистка кэша | ✅ | ❌ | | Пересборка | ✅ | ❌ | | Получение зависимостей | ✅ | ❌ | | Рекомендуется для | Изменения кода | Тестирование | ## 🎯 Параметры по умолчанию - **Hostname:** `192.168.31.142` - **Port:** `8080` ## 🛠️ Ручное управление ### Остановка приложения ```bash lsof -ti:8080 | xargs kill -9 ``` ### Проверка статуса порта ```bash lsof -i:8080 ``` ### Запуск вручную ```bash flutter run -d web-server --web-hostname 192.168.31.142 --web-port 8080 ``` ## 🔍 Отладка ### Если скрипт не работает: 1. Проверьте, что вы в директории `apps/web_app1` 2. Убедитесь, что файл `pubspec.yaml` существует 3. Проверьте права на выполнение: `ls -la *.sh` ### Если порт занят: ```bash # Найти процесс lsof -i:8080 # Остановить процесс lsof -ti:8080 | xargs kill -9 ``` ## 📝 Примеры использования ### Разработка ```bash # После изменения кода ./restart_web.sh # Для быстрого тестирования ./quick_restart.sh ``` ### Продакшн ```bash # Полная пересборка для продакшна ./restart_web.sh 192.168.31.142 8080 ``` ### Локальная разработка ```bash # Запуск на localhost ./quick_restart.sh localhost 8080 ``` ## 🎉 Результат После выполнения скрипта приложение будет доступно по адресу: - **http://192.168.31.142:8080** (по умолчанию) - **http://localhost:8080** (если указан localhost) Приложение использует новую архитектуру с: - ✅ `BridgeManager` для управления bridge - ✅ `WebTransport` для инкапсуляции транспорта - ✅ Абстрактный транспортный слой - ✅ Высокоуровневый API для payload'ов