mnemo_cards/games/apps/web_app1/README_SCRIPTS.md
2025-11-11 02:55:41 +03:00

127 lines
No EOL
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🚀 Скрипты для перезапуска 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'ов