Skip to content

🌶️ Современный и технологичный кокомер: вы спрашиваете, а бот выдаёт научно обоснованный размер и даже в шуточной форме сопоставляет ваш размер агрегата с номером региона России. Линейка или микроскоп, больше не понадобиться!

Notifications You must be signed in to change notification settings

MairwunNx/dickobrazz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

537 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dickobrazz

AI Capable Build Status Go Report Card Runs on Telegram Docker GitHub Release Go Version

Язык: 🇷🇺 Русский | 🇺🇸 English | 🇨🇳 中文

🌶️ Дикобраз бот для Telegram, способен в точности до сантиметра выдать размер вашего агрегата, краника или валыны, не обижайтесь, если не удалось понтануться большим прибором, это всего лишь шутка.

Современный и технологичный кокомер: вы спрашиваете, а бот выдаёт научно обоснованный размер и даже в шуточной форме сопоставляет ваш размер агрегата с номером региона России. Линейка или микроскоп, больше не понадобиться!

Note

Продукт вдохновленный 1504 эпизодом (№ 213) сериала «Южный парк» (T.M.I.).

Фичи

Размер кока

Каждый день бот выдаёт уникальный размер от 0 до 61 см. Размер сбрасывается в полночь по МСК, сопровождается сезонными эмодзи и сопоставляется с номером региона России.

Рейтинги и соревнования

  • Линейка коков — топ-13 лучших размеров за текущий день
  • Ладдер коков — вечный рейтинг по суммарному размеру за всё время
  • Гонка коков — сезонное соревнование на 3 месяца с суммированием размеров
  • Система сезонов — каждые 3 месяца новый сезон с победителями и призами
  • Кок-респект™ — очки за победы в сезонах и выполнение достижений

Достижения

50+ уникальных достижений: от первого измерения до попадания в редкие числовые комбинации. Каждое достижение приносит респекты и отображается с прогрессом.

Продвинутая аналитика

  • ИРК (Индекс Размера Кока) — персональный рейтинг (аналог T.M.I. из South Park)
  • Детальная статистика — средний кок, медиана, рекорды, динамика изменений
  • Коэффициент везения, волатильность кока, скорость роста
  • Процент доминирования — доля вклада пользователя в общую статистику

Использование

Dickobrazz работает через inline queries в Telegram. Просто введите @dickobrazz_bot в любом чате и выберите нужную опцию:

Доступные inline команды

  • Размер кока — получить свой размер на сегодня с региональным сопоставлением
  • Линейка коков — топ-13 игроков за текущий день (daily рейтинг)
  • Ладдер коков — вечный рейтинг по суммарному размеру за всё время
  • Гонка коков — рейтинг текущего сезона (3 месяца)
  • Динамика кока — подробная персональная статистика и аналитика
  • Сезоны коков — история сезонов и победители с навигацией
  • Кок-ачивки — достижения и прогресс с пагинацией

Как это работает

  1. Откройте любой чат в Telegram
  2. Введите @dickobrazz_bot
  3. Выберите интересующую опцию из списка
  4. Отправьте результат в чат или посмотрите приватно

Запуск и деплоймент 🚀

Перед началом 📦

Если репозиторий еще не клонирован:

git clone https://github.com/mairwunnx/dickobrazz.git

Dev Containers (рекомендуется для разработки и запуска в dev среде) 🧰

Требования:

  • Запущенный Docker
  • Минимум 1 GB оперативы для контейнера с рабочей средой (VS Code/Cursor/Goland)
  • Инструмент поддерживающий дев контейнеры или просто CLI утилита для запуска дев контейнера.

Important

Перед запуском дев контейнера, необходимо установить переменные окружения в файле .devcontainer/devcontainer.env

Переменные окружения:

  • Файл: .devcontainer/devcontainer.env
  • Минимум нужны:
BOT_CSOT="ваш_internal_csot_token" # По сути любая доверенная строка полученная от бэкэнда.
BOT_SERVER_BASE_URL="https://api.dickobrazz.com" # Базовый URL бэкенда.
BOT_TG_TOKEN="ваш_telegram_bot_token" # Токен бота для Telegram.
BOT_TG_ENV="test" # Среда бота для Telegram (test/production).

Или отредактируйте файл конфигурации ./config.yaml.

Как открыть (VS Code/Cursor/Goland):

  1. Откройте проект в VS Code/Cursor/Goland
  2. Найдите действие Reopen in Container и запустите его.

Ваш инструмент поддерживающий дев контейнеры, должен автоматически собрать и запустить дев контейнер.

Запуск бота в dev контейнере:

Note

Для запуска бота для разработки в dev контейнере, можно использовать обычный туллинг Go или air который поддерживает "hot reload" при изменении исходников. (весь необходимый тулинг уже собран в контейнере)

Туллинг Команда Описание
air air Запуск бота с hot reload
go go run program.go Обычный запуск бота.

Через Docker Compose 🐳

Переменные окружения:

  • Файл: .devcontainer/devcontainer.env
  • Минимум нужны:
BOT_CSOT="ваш_internal_csot_token" # По сути любая доверенная строка полученная от бэкэнда.
BOT_SERVER_BASE_URL="https://api.dickobrazz.com" # Базовый URL бэкенда.
BOT_TG_TOKEN="ваш_telegram_bot_token" # Токен бота для Telegram.
BOT_TG_ENV="test" # Среда бота для Telegram (test/production).

Запуск:

docker compose up -d

Использование готового образа 🧩 (продакшн)

Используйте готовый образ из GitHub Container Registry:

services:
  dickobrazz:
    image: ghcr.io/mairwunnx/dickobrazz:latest
    env_file: .env

Important

При необходимости изменения конфигурационного файла, необходимо пересобрать имадж с новым конфигом, или просто смаунтить локальный конфиг в контейнер. (первый способ рекомендуется)


Стек

  • Go 1.26 — основной язык разработки
  • Telegram Bot API (tgbotapi/v5) — интеграция с Telegram
  • Resty — HTTP клиент для взаимодействия с бэкендом
  • uber/fx — dependency injection и управление lifecycle
  • Prometheus — метрики и мониторинг
  • go-i18n — интернационализация (6 языков)
  • Docker + Docker Compose — контейнеризация и оркестрация
  • Structured Logging (slog) — JSON логирование с контекстом

Ссылки на проекты из той же экосистемы

dickobrazz-server — 🌶️ Сервер для @dickobrazz_bot, обслуживание пользовательских данных, агрегация персональных данных, создание статистики.

Ссылки на связанные проекты

Emperor Xi — 🀄️ Telegram-бот с ИИ, стилизованный под великого императора Xi. Личный помощник великого лидера, готовый отвечать на вопросы простого народа.


Русская сила

🇷🇺 Сделано в России с любовью. ❤️

Dickobrazz — это про честный рандом и здоровую конкуренцию. Никакого обмана, только математика и везение.

🫡 Made by Pavel Erokhin (Павел Ерохин), aka mairwunnx.

About

🌶️ Современный и технологичный кокомер: вы спрашиваете, а бот выдаёт научно обоснованный размер и даже в шуточной форме сопоставляет ваш размер агрегата с номером региона России. Линейка или микроскоп, больше не понадобиться!

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors 3

  •  
  •  
  •