# ✨ Gekon - Новые возможности ## 🎨 1. Анимированный фон с частицами ### Описание Динамический фон с анимированными частицами, создающий эффект сетевых соединений. ### Технические детали - **Технология:** Canvas API - **Производительность:** Оптимизирован для 60 FPS - **Адаптивность:** Автоматическое масштабирование под размер экрана - **Цвета:** Gekon green (#10b981) и cyan (#06b6d4) ### Возможности ✅ Плавная анимация частиц ✅ Динамические связи между близкими частицами ✅ Wrap-around эффект (частицы появляются с другой стороны) ✅ Автоматическая очистка при размонтировании ✅ Blend mode для лучшей интеграции с фоном ### Настройка #### Количество частиц ```typescript // src/components/ParticlesBackground.tsx, строка ~35 const particleCount = Math.min(100, Math.floor((canvas.width * canvas.height) / 15000)); ``` - Увеличьте делитель (15000 → 20000) для меньшего количества - Уменьшите (15000 → 10000) для большего количества #### Скорость движения ```typescript // src/components/ParticlesBackground.tsx, строка ~40 vx: (Math.random() - 0.5) * 0.5, // Измените 0.5 на нужную скорость vy: (Math.random() - 0.5) * 0.5, ``` #### Дистанция связей ```typescript // src/components/ParticlesBackground.tsx, строка ~70 if (distance < 150) { // Измените 150 на нужную дистанцию ``` #### Цвета ```typescript // Частицы (строка ~60) ctx.fillStyle = `rgba(16, 185, 129, ${particle.opacity})`; // Связи (строка ~75) ctx.strokeStyle = `rgba(6, 182, 212, ${opacity})`; ``` ### Производительность - **Desktop:** ~100 частиц, 60 FPS - **Tablet:** ~60 частиц, 60 FPS - **Mobile:** ~40 частиц, 60 FPS --- ## 🗺️ 2. Интерактивная карта серверов ### Описание Интерактивная карта с 25+ локациями серверов по всему миру, показывающая статистику в реальном времени. ### Технические детали - **Технология:** SVG + React - **Интерактивность:** Hover tooltips - **Анимация:** Пульсирующие точки, анимированные линии - **Данные:** Статические (можно подключить API) ### Возможности ✅ 25+ локаций серверов ✅ Hover tooltips с деталями ✅ Статистика (пользователи, задержка) ✅ Индикаторы статуса (online/maintenance) ✅ Анимированные пульсации ✅ Линии соединений между серверами ✅ Адаптивный дизайн ### Локации серверов #### Северная Америка (3) - 🇺🇸 Los Angeles - 1,250 users, 12ms - 🇺🇸 New York - 1,840 users, 8ms - 🇨🇦 Toronto - 680 users, 15ms #### Южная Америка (2) - 🇧🇷 São Paulo - 520 users, 45ms - 🇦🇷 Buenos Aires - 280 users, 52ms #### Европа (10) - 🇬🇧 London - 2,100 users, 5ms - 🇩🇪 Frankfurt - 1,650 users, 7ms - 🇫🇷 Paris - 980 users, 9ms - 🇳🇱 Amsterdam - 1,420 users, 6ms - 🇸🇪 Stockholm - 540 users, 12ms - 🇵🇱 Warsaw - 720 users, 14ms - 🇪🇸 Madrid - 650 users, 18ms - 🇮🇹 Milan - 580 users, 16ms - 🇹🇷 Istanbul - 680 users, 20ms - 🇮🇱 Tel Aviv - 420 users, 26ms #### Азия (8) - 🇯🇵 Tokyo - 1,950 users, 8ms - 🇸🇬 Singapore - 1,680 users, 10ms - 🇭🇰 Hong Kong - 1,420 users, 12ms - 🇰🇷 Seoul - 1,280 users, 9ms - 🇮🇳 Mumbai - 890 users, 25ms - 🇦🇪 Dubai - 740 users, 22ms - 🇹🇭 Bangkok - 620 users, 28ms - 🇻🇳 Ho Chi Minh - 480 users, 32ms #### Океания (2) - 🇦🇺 Sydney - 920 users, 18ms - 🇳🇿 Auckland - 340 users, 24ms #### Африка (1) - 🇿🇦 Cape Town - 380 users, 48ms **Всего:** 25 серверов, 23,000+ активных пользователей ### Добавление нового сервера ```typescript // src/components/ServerMap.tsx, добавьте в массив servers: { id: "moscow", // Уникальный ID country: "Russia", // Страна city: "Moscow", // Город x: 55, // Позиция X (% от левого края, 0-100) y: 30, // Позиция Y (% от верхнего края, 0-100) users: 2500, // Количество пользователей latency: 5, // Задержка в миллисекундах status: "online" // Статус: "online" или "maintenance" } ``` ### Позиционирование серверов Координаты X и Y в процентах (0-100): ``` Примерные координаты регионов: - Западное побережье США: x: 15, y: 35 - Восточное побережье США: x: 22, y: 32 - Западная Европа: x: 48-52, y: 28-35 - Восточная Европа: x: 54-58, y: 30-35 - Ближний Восток: x: 56-60, y: 35-42 - Южная Азия: x: 68-72, y: 42-48 - Восточная Азия: x: 76-82, y: 34-42 - Юго-Восточная Азия: x: 74-78, y: 48-52 - Австралия: x: 85, y: 72 ``` ### Настройка внешнего вида #### Цвет точек ```typescript // src/components/ServerMap.tsx, строка ~180 className={`... ${ server.status === "online" ? "bg-gekon-green shadow-lg shadow-gekon-green/50" // Зелёный для online : "bg-yellow-500 shadow-lg shadow-yellow-500/50" // Жёлтый для maintenance }`} ``` #### Размер точек ```typescript // src/components/ServerMap.tsx, строка ~182