Files

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** - шаблоны команд