Files
Gekon Dev 80f98282e7 feat: redesign landing sections and interactions
Refresh visual design across hero, map, features, FAQ, and performance sections with tighter spacing, richer animations, updated branding assets, and localization/content tweaks.
2026-05-06 19:02:07 +03:00

188 lines
5.6 KiB
Markdown
Raw Permalink 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.
# 🐛 Отладка Gekon
## Проблема: Не видно частицы
### Возможные причины:
1. **Canvas не поддерживается браузером**
- Откройте консоль браузера (F12)
- Проверьте ошибки JavaScript
2. **Частицы за другими элементами**
- Проверьте z-index
- Убедитесь, что ParticlesBackground рендерится
3. **Opacity слишком низкая**
- Частицы имеют opacity: 0.4
- На светлом фоне могут быть не видны
### Быстрая проверка:
1. Откройте http://localhost:5173 (или 8080)
2. Нажмите F12 (DevTools)
3. Перейдите в Console
4. Проверьте ошибки
### Типичные ошибки:
#### Ошибка: "Cannot read property 'getContext' of null"
**Решение:** Canvas ref не инициализирован
```typescript
// Проверьте, что canvas монтируется
useEffect(() => {
const canvas = canvasRef.current;
if (!canvas) {
console.error('Canvas not found!');
return;
}
// ...
}, []);
```
#### Ошибка: "ResizeObserver loop limit exceeded"
**Решение:** Это предупреждение, можно игнорировать
#### Частицы не видны
**Решение 1:** Увеличьте opacity
```typescript
// В ParticlesBackground.tsx, строка ~60
ctx.fillStyle = `rgba(16, 185, 129, ${particle.opacity * 2})`; // Увеличили в 2 раза
```
**Решение 2:** Увеличьте размер частиц
```typescript
// В ParticlesBackground.tsx, строка ~40
size: Math.random() * 4 + 2, // Было: * 2 + 1
```
**Решение 3:** Увеличьте количество
```typescript
// В ParticlesBackground.tsx, строка ~35
const particleCount = Math.min(200, ...); // Было: 100
```
### Проверка рендеринга:
Добавьте console.log в ParticlesBackground:
```typescript
useEffect(() => {
console.log('ParticlesBackground mounted!');
const canvas = canvasRef.current;
if (!canvas) {
console.error('Canvas not found!');
return;
}
console.log('Canvas found:', canvas.width, 'x', canvas.height);
console.log('Particles count:', particlesRef.current.length);
// ...
}, []);
```
### Проверка в браузере:
1. Откройте DevTools (F12)
2. Elements tab
3. Найдите `<canvas>` элемент
4. Проверьте стили:
- `position: absolute`
- `inset: 0`
- `opacity: 0.4`
- `z-index` не перекрыт
### Временное решение (для теста):
Сделайте частицы очень заметными:
```typescript
// В ParticlesBackground.tsx
// Строка ~60 - увеличьте opacity
ctx.fillStyle = `rgba(16, 185, 129, 1)`; // Полная непрозрачность
// Строка ~40 - увеличьте размер
size: Math.random() * 10 + 5, // Большие частицы
// Строка ~35 - больше частиц
const particleCount = 200;
```
### Проверка карты серверов:
Если карта не работает:
1. Откройте консоль (F12)
2. Проверьте ошибки в ServerMap
3. Убедитесь, что hover работает
**Типичная проблема:** Tooltips не показываются
```typescript
// Проверьте z-index в ServerMap.tsx
// Tooltip должен иметь z-10
className="... z-10 ..."
```
### Перезапуск с чистого листа:
```bash
# Остановите Docker
wsl bash -c "cd gekon-speed-boost-3ba17197-main && docker compose down"
# Удалите volumes
wsl bash -c "cd gekon-speed-boost-3ba17197-main && docker compose down -v"
# Пересоберите
wsl bash -c "cd gekon-speed-boost-3ba17197-main && docker compose up --build"
```
### Проверка портов:
Текущий порт может быть 8080 вместо 5173:
- Попробуйте http://localhost:8080
- Или http://localhost:5173
### Логи Docker:
```bash
# Смотрите логи в реальном времени
wsl bash -c "cd gekon-speed-boost-3ba17197-main && docker compose logs -f"
```
### Если ничего не помогает:
1. Откройте http://localhost:8080 (или 5173)
2. Нажмите F12
3. Скопируйте все ошибки из Console
4. Проверьте Network tab - все ли файлы загружаются
---
## Быстрый тест частиц:
Добавьте в консоль браузера:
```javascript
// Проверка Canvas API
const canvas = document.querySelector('canvas');
if (canvas) {
console.log('Canvas found!', canvas.width, canvas.height);
const ctx = canvas.getContext('2d');
ctx.fillStyle = 'red';
ctx.fillRect(100, 100, 200, 200); // Красный квадрат для теста
} else {
console.error('Canvas NOT found!');
}
```
Если увидите красный квадрат - Canvas работает, проблема в коде частиц.
Если нет - Canvas не рендерится.
---
**Текущий статус:**
- ✅ Docker запущен
- ✅ Vite работает
- ❓ Частицы - нужна проверка
- ❓ Карта - нужна проверка
**Порт:** http://localhost:8080 или http://localhost:5173