Skip to content

ReNothingg/RBurst

Repository files navigation

Иконка Block Burst

RBurst

Яркая block-puzzle игра в Telegram: собирайте линии, очищайте поле, набирайте очки и соревнуйтесь в таблице лидеров.

RBurst — быстрая головоломка с блоками прямо в Telegram.

Собирайте фигуры на поле 8×8, закрывайте строки и столбцы, зарабатывайте комбо и улучшайте рекорд. Играйте в Mini App, следите за таблицей лидеров и соревнуйтесь с другими игроками.

Что внутри

  • Фронтенд на React 19 + Vite, адаптированный под тг веб апп: безопасные отступы, темы, haptic feedback и полноэкранный режим.
  • Игровой процесс под touch-управление: перетаскивание фигур, очистка линий, частицы, возрождение и обновление блоков.
  • Бэкенд на FastAPI с SQLite, проверкой тг init data, статистикой игроков, периодами рейтинга, рефералами и настройками приватности.
  • Интеграция с ботом на Aiogram: /start, /admin, кнопки Web App, настройка webhook и обработка платежей тг Stars.
  • Админ-панель для модерации игроков, управления очками, продуктовых переключателей, текстов бота, недельных/месячных призов и выдачи наград.
  • Скрипты деплоя на Ubuntu: nginx, systemd, certbot, Node.js, Python venv и постоянное хранилище SQLite.

Стек

Слой Технологии
Фронтенд React, TypeScript, Vite, CSS
Бэкенд FastAPI, Pydantic, SQLite
Telegram Telegram Mini Apps, Aiogram, счета Stars
Деплой nginx, systemd, certbot, Ubuntu, ChatGPT

Локальная установка

npm ci
python3 -m venv .venv
. .venv/bin/activate
pip install -r backend/requirements.txt
cp .env.example .env

Для локальной разработки в браузере без Telegram-авторизации оставьте:

BLOCK_BURST_TELEGRAM_AUTH_REQUIRED=false
BLOCK_BURST_WEBAPP_URL=http://127.0.0.1:5173/
BLOCK_BURST_CORS_ORIGINS=http://127.0.0.1:5173,http://localhost:5173

Локальный запуск

Запустите backend:

. .venv/bin/activate
uvicorn backend.app.main:app --reload --host 127.0.0.1 --port 8000

Запустите frontend:

npm run dev

Если API работает на другом источнике, задайте VITE_API_BASE_URL перед запуском Vite:

VITE_API_BASE_URL=http://127.0.0.1:8000 npm run dev

Деплой в production

Скрипты деплоя рассчитаны на свежий убунча-сервер с рут-доступом.

sudo bash deploy/bootstrap-ubuntu.sh blockblaster.cc https://github.com/ReNothingg/RBurst.git

После этого заполните /opt/blockburst/app/.env и перезапустите сервис:

sudo systemctl restart blockburst

Для последующих обновлений на сервере используйте:

cd ~/BLOCKBURST && git pull && cd /opt/blockburst/app && sudo -u blockburst git fetch origin main && sudo -u blockburst git reset --hard origin/main && sudo bash deploy/deploy-update.sh

Проект RBurst закрывается

...так и не дожив до релиза :)

Короткий апдейт для тех, кто следил за разработкой. Я принял решение полностью свернуть и заморозить вебапп-игру, над которой работал последние пару недель.

Почему так вышло? Я взял на себя 100% технической реализации: фронт, бэк, деплой, настройка докера, привязка домена через клауд. А со стороны «партнера» получал только гениальные идеи уровня "давай дарить айфоны за топ-1" и требования доли за тестирование.

В какой-то момент я просто посчитал свои затраты (порядка 20 TON) и его (0 TON) и понял, что тянуть всё в соло, оплачивая сервера из своего кармана ради чужих фантазий — это пустая трата времени.

Какие выводы? Я ни о чем не жалею. За копеечные затраты на хост я получил урок: никогда не бери в долю людей, которые не вкладывают свои деньги и скиллы наравне с тобой. Ну и чисто технически — это был крутой опыт. Я в боевых условиях с нуля собрал и задеплоил рабочий вебапп в тг (Давно если честно хотел сделать это. Возможно для ReSave тоже сделаю это).

Отдельное спасибо тем, кто помог правда с бетой и помог найти крупные уявимости (ты знаешь, о ком я 🤝).

Это уже какой проект по счету за этот год кстати? Ну в принципе и не важно. Я просто хочу сказать, что не стоит тратить время и деньги на проекты, которые не приносят тебе радости и не ценят твой вклад. В мире столько возможностей, чтобы создавать крутые вещи с классными людьми. Не стоит застревать в токсичных коллабах.

About

Яркая block-puzzle игра в Telegram: собирайте линии, очищайте поле, набирайте очки и соревнуйтесь в таблице лидеров.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Contributors