mnemo_cards/games/apps/web_app1/README_SCRIPTS.md

127 lines
3.9 KiB
Markdown
Raw Normal View History

2025-11-10 23:55:41 +00:00
# 🚀 Скрипты для перезапуска 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'ов