📋

Обновления

Что нового в aff.top — новые функции, улучшения и исправления

/tools: 51 инструмент, новая навигация, fingerprint-декомпозиция, IPv6 leak, bot claim/edit

15.04.2026 01:53

За большую сессию: +10 инструментов (domainage, wayback, cms, indexcheck, translit, legalgen, proxycheck, faker, bulkopen, минусатор в phrases), расширен /tools/text на 13 утилит для копирайтеров. Новая 7-категорийная навигация: компактное mega-menu (800px вместо 1120px), two-level sidebar, футер с категория-пилюлями. Декомпозиция fingerprint.blade.php с 2809→40 строк + public/js/fingerprint.js + tools-common.js (общие helpers). SRI на все CDN, JSON-LD schema на 51/51 tools, tools.css utility, Leaflet OpenStreetMap карты в /tools/ip и /tools/fingerprint, lazy-load. HTTP/2 Akamai fingerprint сервер на tls.aff.top:8445. IPv6 leak test через v4.aff.top/v6.aff.top поддомены (Cloudflare DNS + Let s Encrypt). DNSBL history с TTL 30 дней. Фиксы: video-uniqualizer (CSP media-src blob: + codec fallback), boar-path редизайн (битые Blade-комменты), pagination без red glow, breadcrumb одной высоты на light/boar темах, faces claim/edit теперь корректная логика для авторизированных, восстановлена boar-карточка в sidebar, Telegram bot обрабатывает /start claim_X и /start edit_X deep-links с pending-edit capture flow. 162 тестов passed.

#tools #ux #navigation #bot

Массовое расширение /tools: +10 инструментов (домен/SEO/арбитраж/копирайтеры) + Leaflet карты

14.04.2026 22:22

За сессию добавлены: /tools/domainage (возраст домена), /tools/wayback (Wayback Machine), /tools/cms (CMS Detector Wappalyzer-like), /tools/indexcheck (Google/Yandex site:), /tools/translit (ЧПУ генератор), /tools/phrases — вкладка Минусатор, /tools/legalgen (Privacy/Terms/GDPR на RU+EN), /tools/proxycheck (batch до 50 прокси с anonymity/GEO/ASN), /tools/faker (12 стран имён+адресов+телефонов+IBAN), /tools/bulkopen (массовое открытие URL). Расширен /tools/text (13 утилит для копирайтеров: подсчёт, сортировка, дедуп, HTML strip, case convert). Leaflet OpenStreetMap карты добавлены в /tools/ip и /tools/fingerprint Network tab. Итого 50 инструментов в 7 категориях.

#tools #cpa #seo

Новые инструменты: DNSBL Checker (51 зона), DNS Leak Test, WebRTC upgrade

14.04.2026 20:21

Добавлены 2 независимых инструмента для арбитражников: /tools/dnsbl — проверка IP по 51 DNSBL зоне (Spamhaus, SORBS, SpamCop, Barracuda, UCEPROTECT L1/L2/L3, SpamRats, abuse.ch, DroneBL, Mailspike и др.) через parallel DNS-over-HTTPS; /tools/dnscheck — DNS Leak Test с собственным authoritative NS-сервером на dnscheck.aff.top + HTTP API логгером резолверов. В Antidetect Checker добавлены: WebRTC parallel STUN+TURN, 4 buckets (ext IPv4/IPv6, local IPv4/IPv6), NAT Type detection (Full Cone / Symmetric / Blocked), Local time vs IP time synchronization check, UA HTTP vs JS diff visualization.

#tools #fingerprint #dnsbl #dns-leak

Antidetect Checker v2: 73 проверки, 6 scores, JA3+JA4, FingerprintDetector mode

14.04.2026 19:22

Полный рефакторинг /tools/fingerprint. 73 evidence-based проверок в 6 модулях (Network/Surface/Consistency/Transport/Tamper/Uniqueness). Отдельные scores: Leak / Consistency / Uniqueness / Transport / Tampering / IP Reputation. JA3 + JA4 TLS-отпечатки через собственный Go-сервер на tls.aff.top:8443. IP Reputation с ASN, Tor exit-нодами, DNSBL, reverse DNS. VM detection (SwiftShader/VMware/VBox/Parallels), DevTools detection, Privacy-browser detection (Tor/Brave), Client Hints vs HTTP consistency. Rarity database: показывает процент уникальности вашего отпечатка. Share links на 30 дней. Новый инструмент /tools/fingerprint/audit (FingerprintDetector) — мониторинг какие API вызывает страница, 16 категорий + копируемый JS-сниппет для анализа любого сайта через DevTools.

#tools #fingerprint #ja3 #ja4

Mega-menu Инструменты + footer redesign

14.04.2026 15:00

Добавлено mega-menu Инструменты в header (4 колонки: Популярные, Калькуляторы, Утилиты, О разделе). Footer переделан в сворачиваемую карту сайта. Scroll-pills навигация на страницах инструментов.

#ux #navigation

Раздел Инструменты — 27 утилит

14.04.2026 14:00

Запущен /tools с 27 бесплатными инструментами: временная почта, уникализация фото/видео, Postback Tester, Redirect Checker, WHOIS, DNS, генератор профилей, проверка домена (13 проверок), A/B Test, UTM Builder (9 источников), ROI калькулятор, SEO анализ текста, SERP Preview, Meta Tag Generator, Robots.txt, комбинатор фраз, Punycode, OG Preview, цвета/градиенты, User-Agent, Cookie конвертер, генератор паролей, QR-код, Base64, Hash.

#feature #tools

Telegram-бот: чистка и обновление

14.04.2026 12:00

Удалены /check, /watch, /unwatch. Добавлена команда /mail. Обновлена клавиатура и /help. /start — одно сообщение вместо двух.

#bot #cleanup

Временная почта — новый сервис

14.04.2026 10:00

Запущен сервис временной почты /tools/mail. 29 доменов, OTP-извлечение, Telegram-уведомления, 2 часа TTL. Cloudflare Email Workers → Laravel → PostgreSQL.

#feature #tools #email

GSC + Яндекс Вебмастер — переезд подан

12.04.2026 21:00

Поданы заявки на переезд во всех вебмастерах: spam.partners→aff.top (GSC + Яндекс), trickytraff.com→aff.top (Яндекс), cpa.link→aff.top (GSC + Яндекс). Sitemap aff.top отправлен.

#seo #migration

БД: 204 гео + 2 компании — домен в meta_title

12.04.2026 20:00

Обновлены 204 записи geos.meta_title и 2 записи companies.description — замена spam.partners→aff.top в текстах базы данных.

#seo #migration

cpa.link → aff.top

12.04.2026 19:30

Домен cpa.link перенесён. 1060 постов WordPress редиректят по категориям: /news/*→/blog/news, /video/*→/blog/videos, /article/*→/blog/articles. SSL через Let's Encrypt. Бот @cpalink_sender_bot и 200+ каналов сохранены.

#seo #migration

trickytraff.com → aff.top

12.04.2026 17:00

Домен trickytraff.com перенесён на наш сервер. 190 гео-страниц /geo/{CODE} редиректят на aff.top/geo/{code}. GeoController: uppercase→lowercase 301. SSL через Let's Encrypt.

#seo #migration #geo

Telegram бот — webhook fix

12.04.2026 16:00

Webhook перерегистрирован на aff.top с secret_token. Uptime-монитор обновлён: проверяет aff.top/health. Алерт-сообщения обновлены.

#bot #infrastructure

Старые URL aff.top — 301 редиректы

12.04.2026 15:30

Настроены nginx-редиректы для старых URL aff.top: /programs→/companies, /programs/{slug}→/company/{slug}, /brands/*→/companies, /market/*→/companies, /contact→/about и др. 800+ программ редиректят на правильные страницы.

#seo #migration

Миграция домена: spam.partners → aff.top

12.04.2026 15:00

Основной домен сайта изменён на aff.top. Обновлены APP_URL, 86+ файлов кода, все title/OG/canonical/schema/sitemap. spam.partners настроен как 301-редирект. Telegram webhook перерегистрирован. Новые счётчики: GA4 G-7S77CTW8RS, Яндекс Метрика 106743389.

#seo #infrastructure #migration

SEO + бот-аудит + UX login redirect

10.04.2026 12:00

seo: добавлен sitemap-faces.xml — 2176 профилей теперь видимы для поисковиков; seo: fix duplicate H1 на /boar-path — вторая H1 заменена на H2; fix: login redirect при написании отзыва — redirect сохраняет контекст компании

#seo #bot #ux

Полная ревизия: светлая тема, кэширование, UI консистентность

10.04.2026 12:00

fix: 12 rgba(255,255,255) бордеров заменены на CSS переменные — видимы в светлой теме; fix: 8 hardcoded тёмных цветов в JS (charts, slider, search) заменены на CSS var reads; perf: Cache::remember для bot/businessBot/faces/glossary/reports — снижение нагрузки на БД

#performance #ui #bugfix

Deep audit: ReporterController + CompanyPageController кэширование

10.04.2026 14:00

Два параллельных агента провели ревизию всех Services (26 файлов), Middleware (3), Controllers (CompanyPageController, FacesController, CatalogController, ReporterController), Models, Events/Listeners. Главная находка: ReporterController::renderReporterView() выполнял 8-10 uncached DB-запросов на каждый pageview (catBreakdown, topCompanies, companiesMap, reportersBelow, firstReport, reviews, pointsLog). Обёрнуто в один Cache::remember на 5 минут. CompanyPageController: related companies и related services не кэшировались — добавлен кэш 5 мин. Удалён пустой Services/Biz/ директорий.

#perf #code-quality #cache

Server: FPM тюнинг + artisan optimize — RAM -56%

10.04.2026 11:00

Убит забытый artisan serve процесс (работал с 25 марта, жрал 62MB). Запущен php artisan config:cache + route:cache + view:cache — конфиг/роуты/views предкомпилированы. FPM pool: max_children 12→6, max_requests 500→250, start_servers 3→2. Результат: PHP-FPM RAM 372MB→165MB (-56%), TTFB 334ms→238ms (-29%), worker size 85MB→55MB.

#infra #perf #memory

Ревизия кода: кэширование, баги, индексы, DRY

10.04.2026 12:00

Полная code review двумя параллельными агентами. Исправлено: GlossaryController::show() — 6 uncached DB-запросов на каждый pageview обёрнуты в Cache::remember на 1 час (одна из самых посещаемых страниц). Reporter::reviews_count accessor делал COUNT(*) на каждой странице для auth-пользователей — закэширован на 5 минут. GameController::awardsHub() — PostgreSQL HAVING bug с month_reports alias (whereHas генерил невалидный HAVING по alias SELECT). Добавлен composite index tags(type, slug) — таблица имела 163K sequential scans. SiteController: извлечён getWeeklyCounts() helper (убрано дублирование запросов this_week/last_week). Очищено 18MB ротированных логов.

#perf #bugfix #code-quality #database

Perf: axios удалён, JS code-splitting — бандл -92%

10.04.2026 08:00

Удалён axios (не использовался, все запросы через native fetch) — JS бандл с 72KB до 35KB. Далее code-splitting через dynamic import: 10 lazy-loaded чанков вместо монолита. Core bundle: 5.5KB (2.2KB gzip). На главной загружается ~17KB JS вместо 72KB. CSS: удалены дубли (activity-bar-tooltip, :root, badge triple). Inline <style> из index_v3 вынесен в app.css.

#perf #js #optimization

Светлая тема: полный редизайн сайта

10.04.2026 07:00

Дефолтный дизайн spam.partners переключен с тёмного на светлый. 40+ CSS-переменных в theme.css, 77 файлов обновлено. Белый фон с dot-паттерном, зелёные акценты (#16a34a), card shadows, zebra-строки в таблицах. Боар-режим (тёмная тема) сохранён полностью — переключение мгновенное через CSS variables. Адаптирован весь сайт: главная, компании, faces, глоссарий, каталог, awards, bot, about.

#design #ux #light-theme

Кабанья Премия: /awards hub + кросс-навигация 4 страниц

09.04.2026 08:10

Новая landing-страница /awards объединяет Антипремию (/anti-awards), Рейтинг охотников (/hunting) и Архив по месяцам (/top/YYYY-MM) в единый хаб. Название: Кабанья Премия — два зала: Зал Позора (худшие компании-спамеры) и Зал Славы (лучшие охотники). Hero с сезонным таймером, 4 карточки live-данных (Лидер Позора, Кабан месяца, Прорыв недели, Новичок ада), двухколоночный preview топ-10 + топ-10, архивные чипы по месяцам, CTA. На всех 4 страницах добавлен общий nav-bar с табами: Премия | Зал Позора | Кабанья Стая | Архив. URL не менялись — добавлен только /awards.

#awards #hunting #navigation #ux

Глоссарий: server-side pagination (-85% размер, -65% время)

09.04.2026 07:32

Главная страница /glossary загружала ВСЕ 718 терминов в HTML (972KB). Переведено на server-side pagination: 50 терминов на страницу, серверный поиск через ?q= (ilike по имени + jsonb_array_elements_text по алиасам), серверный фильтр по буквам через ?letter=. Alphabet strip — теперь <a> ссылки вместо JS-кнопок. noindex для paginated/filtered страниц. Результат: 972KB -> 141KB (-85%), 1.1s -> 0.38s (-65%). Категории и теги не затронуты — они уже были server-side.

#glossary #perf #ux

Infra: PHP-FPM auto-restart (systemd drop-in)

08.04.2026 19:50

Logs-агент нашёл 2 CRITICAL ошибки «PHP-FPM socket unavailable» в окне 03:45-03:50 — это был crash, после которого никто не перезапустил сервис (Restart=no в systemd). 5 минут даунтайма. Добавлен drop-in /etc/systemd/system/php8.3-fpm.service.d/override.conf с Restart=always, RestartSec=5s, StartLimitInterval=60s, StartLimitBurst=5 — теперь при крахе сервис поднимается автоматически за 5 секунд, но не чаще 5 раз в минуту (защита от бесконечного restart-loop при постоянном crash). Применено через systemctl daemon-reload без downtime.

#infra #reliability

Логи -302 ошибок/сутки + Telegram webhook duplicate key fix

08.04.2026 19:48

Продолжение аудита от sub-agents. Logs-агент нашёл 182 случая Undefined cspNonce в layout.blade.php (middleware не всегда применяется на ошибочных запросах — добавлен null-safe fallback ?? "") и 120+ 404 на apple-touch-icon.png (файлы отсутствовали — созданы через cp favicon.png). Telegram webhook имел 2 duplicate key/сутки: CompanyResolver::findOrCreate делал firstOrCreate только по slug, но unique-constraint стоит и на slug, и на name — если запись с таким name уже была (от старых импортов), insert падал. Теперь трёхэтапный поиск: alias → name (case-insensitive) → slug + try/catch на 23505 с retry-fetch по name (защита от race condition).

#logs #bugfix #telegram

Perf: /hunting -62%, /glossary -46% через query-консолидацию

08.04.2026 19:41

Первая волна perf-аудита от sub-agent. GameController::huntingSeason: 4 query → 1 через PostgreSQL FILTER clauses (unique_companies + this_week + first_at + night_reporter все в одном batch-запросе с back-compat маппингами). GlossaryController::baseViewData: popularTerms был uncached randomOrder query на каждый pageview — обёрнут в Cache::remember на час. Замеры: /hunting 0.789s → 0.295s (-62%), /glossary 1.105s → 0.595s (-46%), /faces/{slug} 0.256s (после вчерашнего рефакторинга на партиалы). Остаётся на следующий батч: /company/trads spike, /services/* 301 redirects, Brotli compression на nginx.

#perf #hunting #glossary

5 багов из ревью: @{{ escape, /top локаль, breadcrumbs на /services, glossary hover

08.04.2026 19:35

Блок накопленных багов: 1) Blade @{{ } } }} рендерился как литерал в 5 местах (faces/show 2×, top-month, bot, admin/chats 2×) — Blade трактует @{{ как Vue/Angular escape; фикс {{ "@" . $var }}; 2) /top/2026-04 показывал April 2026 вместо Апрель 2026 — Carbon::setLocale(ru) + Str::ucfirst(); 3) в архиве /top/* показывались пустые месяцы — добавлен фильтр через SpamReport::exists() с защитой на текущий месяц; 4) @section(schema) был вложен внутрь @section(content) с двойным @endsection — schema вынесен в корень; 5) sp-crumbs-sticky (position:sticky;top:56px) на /services/* перекрывал логотип — заменено на инлайновый sp-breadcrumb; 6) карточки глоссария вылезали за грид при hover — убран content-visibility:auto с заниженным intrinsic-size. Плюс: 2026-infatica → infatica (год попал в slug при импорте), soft-delete 3 мусорных статей в companies. Баг /api: внутри <a href> был вложен ещё один <a> с @SPAMpartnersBOT — невалидный HTML, браузер разрывал тег.

#bugfix #ui #seo

Рефакторинг /faces: монолит 396 строк → 88 оркестратор + 12 партиалов

08.04.2026 19:35

Страница лица (/faces/{slug}) подтянута к архитектуре /company: декомпозиция на partials/faces/ (hero, tabs, key-facts, bio, timeline, materials, faq, hunter-panel, sidebar, tab-scripts, breadcrumb, style). Добавлен sidebar с колонкой (grid-cols-3) — коллеги, вертикали, соцсети, CTA-блок «Это я / Данные неверны» вынесены в правую колонку. Одновременно CTA-кнопки добавлены и в hero — чтобы визуально сравнить, где удобнее. Ещё параллельно: 10 регрессионных тестов в tests/Feature/FacesShowTest.php — safety net перед рефакторингом покрывает 6 сценариев наполнения (hunter, без жалоб, без @username, без аватара, с/без компании), плюс защита от @{{ escape-бага и 404 для unknown/draft профилей. Писались ДО декомпозиции (TDD), прошли на монолите и после.

#faces #refactor #tdd #ux

Унификация mega-menu + SEO-тексты категорий подтягиваются наконец

08.04.2026 19:35

Критический баг в config/seo-texts.php: плоские ключи типа affiliate.nutra не резолвились через config("seo-texts.catalog.affiliate.nutra") — Laravel ждёт nested-массив. Переписано на вложенную структуру, добавлены Кравченко-версии (catalog_boar) для всех 29 категорий (нутра, крипто, ecommerce, tracker, push, slots и др.). Теперь на /partners/nutra, /partners/ecommerce, /services/tracker, /ad-networks/push и других категорийных страницах видно полноценное SEO-описание. В mega-menu (Люди + Глоссарий) унифицирован блок «О разделе»: единый паттерн title→description→CTA, счётчики читаются из Cache::remember вместо хардкода.

#seo #catalog #navigation

/top/{year}-{month}: динамический архив + меню «Люди»

07.04.2026 22:47

Статичный /top-march-2026 переделан в динамический /top/{year}-{month} с автогенерацией и валидацией. Кэш 1ч для прошлого, 5м для текущего. Чипы архива на 6 месяцев. /top-march-2026 → 301 → /top/2026-03. Ссылки добавлены с /anti-awards (Архив по месяцам) и /hunting (Snapshot за месяц). Параллельно: добавлен пункт «Люди» в основное меню с мега-меню (по вертикали / по роли / по компании) — 2 176 профилей теперь не спрятаны.

#archive #top #navigation #faces

/about: 9 → 6 блоков, информативный H1

07.04.2026 22:43

H1 «Что такое spam.partners» вместо поэтичного «Рынок должен сделать свой ход». Проблема + миссия объединены в один блок. FAQ сокращён с 10 до 6. Геймификация и Кабанья Семья объединены в один компактный «Сообщество» с 2 ссылками. Цифры и методология — в одном блоке.

#about #ux

Каталог: sticky breadcrumb + расширение /partners/{cat}

07.04.2026 22:39

На всех catalog-страницах sticky-навигация «Главная › Партнёрки › Гемблинг» с backdrop-blur. Категорийные страницы (например /partners/gambling) после пагинации получают мини-блоки «📜 Последние жалобы категории» (5 шт) и «🔧 Сервисы для арбитражников» (5 шт). /category/{slug} теперь 301 → /partners/{slug} — один мастер-хаб вместо трёх параллельных страниц.

#catalog #ux #navigation

/api: quickstart-блок сверху

07.04.2026 22:36

Один curl + один JSON-ответ в двух колонках — старт за 30 секунд. Уточнено про found:false (не гарантия чистоты) и про отсутствие rate-limits на чтение.

#api #docs

/reports group by day + /hidden как фильтр

07.04.2026 22:35

Жалобы группируются по дням (📅 Сегодня / Вчера / дата) с разделителями. Добавлен тумблер «🔒 Только скрытые». /hidden теперь 301 → /reports?hidden=1 — один контент, объяснение почему скрыт показывается под фильтром.

#reports #ux

Карточка компании: бейдж по медиане + один Поделиться

07.04.2026 22:30

Бейдж «🔥 Активный спамер» теперь не с потолка, а на основе медианы по категории: Сильно выше / Выше медианы / Средний / Ниже медианы + тултип с числами. 3 кнопки шеринга (Telegram/X/Карточка/Создать пост) объединены в один dropdown «📤 Поделиться ▾».

#company #ux

Кабанья иерархия рангов

07.04.2026 22:27

Охотничий лор (Послушник→Страж→Карающий→Инквизитор→Легенда) заменён на кабанью иерархию: Поросёнок → Боровок → Кабан → Матёрый кабан → Секач → Хозяин леса. Бейджи участников Reporter::badgeDefinitions переписаны в кабанью тему. На /hunting сезон вытащен из <details> наверх и развёрнут. Унифицировано имя «Рейтинг охотников» вместо четырёх разных названий.

#hunting #boar #ux

UX-аудит: главная под фактический контент

07.04.2026 22:21

Hero переписан: «Партнёрки, сервисы, люди — проверь перед работой». Бейдж «Каталог CPA-рынка + база спама в Telegram» вместо «Открытая база спамеров». Удалён дубль блоков Партнёры (mobile + desktop) → один универсальный. Удалён блок Для разработчиков (есть в /api). −51 строка, −8 секций.

#homepage #ux #audit

Dual avatar system: офиц. + Telegram

07.04.2026 22:14

Два аватара хранятся раздельно: avatar_path (официальное фото) и avatar_path_telegram (вытянутое из Telegram-аккаунта). При переключении Boar Mode JS меняет img.src ↔ data-boar-src. Теперь ни одно фото не теряется при удалении/смене другого. 49 охотников бэкфиллнуто.

#avatar #ux #boar

SEO Phase 1-3: статусы, canonical, redirects

07.04.2026 21:56

Phase 1 — система статусов компаний (pending/published/rejected), черновики не индексируются. Phase 2 — чистые canonical URLs и расширенный noindex для пустых страниц. Phase 3 — alias-редиректы для переименованных компаний и автоматический cache invalidation observer на изменения.

#seo #dev

Глоссарий: 1 219 новых терминов + теги

07.04.2026 21:25

Импорт из 7 внешних глоссариев — 1 219 новых CPA-терминов. Добавлена система тегов (glossary_term_tag pivot) для тематической группировки. Каталог теперь не плоский алфавит, а с категориями.

#glossary #content

Верстка: how-it-works mobile, hscroll touch, dossier, api

07.04.2026 19:54

Мобильная how-it-works перестала ломаться. Горизонтальный свайп в скролл-рядах теперь нативный (убран touch-action:pan-y). Карточки спам-досье причёсаны. API-страница перестала улетать за вьюпорт.

#ui #mobile #fix

Production hardening

07.04.2026 18:26

Жёсткие rate limits на публичные эндпоинты. Cron overlap protection. Защита от cache stampede при инвалидации. Расширенные тесты под нагрузку. Безопаснее под продовый трафик.

#ops #security #perf

Detection improvements + structured logging

07.04.2026 15:53

Улучшены правила определения спамеров. Структурированное логирование (JSON-context). Sentry поначалу подключили, потом убрали — Telegram exception alert достаточно для соло-проекта.

#dev #perf #detection

Аудит: 8 архитектурных фиксов

07.04.2026 15:23

Timezone-bugs, race conditions, fillable, дедупликация. Cache invalidation gaps закрыты. Согласованность dup-filter. Удалён мёртвый код. Защита @dumay от случайной модерации.

#dev #audit #fix

Faces: каталог 2 176 профилей CPA-индустрии

06.04.2026 19:55

Phase A+B завершены. Импортировано 2 176 профилей менеджеров, фаундеров, маркетологов и специалистов CPA/iGaming. Каталог /faces с поиском, фильтрами по компании. Профили /faces/{slug} с биографией, ролью, вертикалями. 2 166 аватарок.

#faces #catalog

Унифицированные хлебные крошки

06.04.2026 17:33

Один компонент sp-breadcrumb на всех страницах: reporter, category, anti-awards, hunting. Раньше у каждой страницы была своя верстка.

#ui #navigation

Главная: компактный редизайн

06.04.2026 17:31

Inline KPI-strip вместо большого блока, перенос Кабаньей Семьи ниже, упрощённый hero. Меньше визуального шума, всё ключевое выше сгиба.

#homepage #ui

Кабанья Застава v4 — Tower Defense игра

06.04.2026 15:50

Полностью переписана мини-игра "Кабанья Застава" с нуля по модели Kingdom Rush: фиксированные дорожки врагов, кабаны-блокеры на позициях, 4 башни с чёткими ролями (Берлога/блок, Роща/экономика, Вышка/физ.DPS, Кузница/маг.DPS), контр-система броня vs магия, именные боссы (MOSTBET, 1XBET, MELBET), мета-прогрессия с трофеями и деревом апгрейдов, мультяшный стиль.

#game #tower-defense #boar-stronghold

Боты и дропдаун — UX

05.04.2026 17:59

Hero CTA ведёт на инструкцию. Кнопки внутри блоков инструкций. ALPHA badge надстрочный. Дропдаун аватарки: градиент, 3 стата, ссылки.

#ux #bot