87 lines
3.5 KiB
Markdown
87 lines
3.5 KiB
Markdown
# ServerManager Pro - Руководство разработчика
|
|
|
|
## 🏗️ Структура проекта
|
|
wireguard-manager/
|
|
├── 📁 installers/ # Скрипты установки
|
|
├── 📁 public/ # Статические файлы Electron
|
|
├── 📁 scripts/ # Вспомогательные скрипты
|
|
├── 📁 src/ # Исходный код React
|
|
│ ├── 📁 components/ # Компоненты приложения
|
|
│ └── 📄 App.js # Главный компонент
|
|
├── 📄 build.sh # Основной скрипт сборки
|
|
├── 📄 build.prod.sh # Продакшен сборка
|
|
└── 📄 package.json # Конфигурация проекта
|
|
|
|
## 🎯 Назначение компонентов
|
|
|
|
### Основные компоненты:
|
|
- **Dashboard** (`Dashboard.js`) - Главная панель управления
|
|
- **ServerList** (`ServerList.js`) - Управление серверами
|
|
- **ServerMonitoring** (`ServerMonitoring.js`) - Мониторинг серверов
|
|
- **NetworkMonitor** (`NetworkMonitor.js`) - Мониторинг сети
|
|
- **PasswordManager** (`PasswordManager.js`) - Менеджер паролей
|
|
- **CommandTemplates** (`CommandTemplates.js`) - Шаблоны команд
|
|
- **Notes** (`Notes.js`) - Система заметок
|
|
- **Settings** (`Settings.js`) - Настройки приложения
|
|
|
|
### Вспомогательные компоненты:
|
|
- **BatchOperations** - Пакетные операции
|
|
- **NetworkTools** - Сетевые инструменты
|
|
- **ServerHealth** - Проверка здоровья серверов
|
|
|
|
## 🔧 Ключевые файлы
|
|
|
|
### Electron файлы:
|
|
- `public/electron.js` - Главный процесс Electron
|
|
- `public/preload.js` - Безопасный мост между процессами
|
|
- `public/index.html` - Базовая HTML структура
|
|
|
|
### Конфигурационные файлы:
|
|
- `package.json` - Зависимости и скрипты
|
|
- `tailwind.config.js` - Конфигурация Tailwind CSS
|
|
- `.env` - Переменные окружения
|
|
|
|
## 🚀 Быстрый старт при разработке
|
|
|
|
# Установка зависимостей
|
|
npm install
|
|
|
|
# Запуск в режиме разработки
|
|
./build.sh dev
|
|
|
|
# Сборка для продакшена
|
|
./build.sh build # Сборка Linux (.deb) + Windows (.exe)
|
|
|
|
# Только Linux сборка
|
|
./build.sh build-linux
|
|
|
|
# Очистка сборок
|
|
./build.sh clean
|
|
|
|
# !! ВАЖНО !! Настройка Wine для сборки Windows приложений
|
|
|
|
## Установка Wine на Ubuntu/Debian:
|
|
sudo apt update
|
|
sudo apt install -y wine
|
|
|
|
|
|
|
|
## 🎨 Архитектура
|
|
|
|
### Frontend (React):
|
|
- **Тёмная тема** по умолчанию
|
|
- **Tailwind CSS** для стилей
|
|
- **Компонентный подход**
|
|
- **Состояние через useState/useEffect**
|
|
|
|
### Backend (Electron):
|
|
- **Главный процесс** - управление окнами
|
|
- **Предзагрузка** - безопасный API мост
|
|
- **Файловая система** - хранение данных
|
|
|
|
### Хранение данных:
|
|
- **servers.json** - список серверов
|
|
- **passwords.json** - менеджер паролей
|
|
- **notes.json** - система заметок
|
|
- **command-templates.json** - шаблоны команд
|