Яркая 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Скрипты деплоя рассчитаны на свежий убунча-сервер с рут-доступом.
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...так и не дожив до релиза :)
Короткий апдейт для тех, кто следил за разработкой. Я принял решение полностью свернуть и заморозить вебапп-игру, над которой работал последние пару недель.
Почему так вышло? Я взял на себя 100% технической реализации: фронт, бэк, деплой, настройка докера, привязка домена через клауд. А со стороны «партнера» получал только гениальные идеи уровня "давай дарить айфоны за топ-1" и требования доли за тестирование.
В какой-то момент я просто посчитал свои затраты (порядка 20 TON) и его (0 TON) и понял, что тянуть всё в соло, оплачивая сервера из своего кармана ради чужих фантазий — это пустая трата времени.
Какие выводы? Я ни о чем не жалею. За копеечные затраты на хост я получил урок: никогда не бери в долю людей, которые не вкладывают свои деньги и скиллы наравне с тобой. Ну и чисто технически — это был крутой опыт. Я в боевых условиях с нуля собрал и задеплоил рабочий вебапп в тг (Давно если честно хотел сделать это. Возможно для ReSave тоже сделаю это).
Отдельное спасибо тем, кто помог правда с бетой и помог найти крупные уявимости (ты знаешь, о ком я 🤝).
Это уже какой проект по счету за этот год кстати? Ну в принципе и не важно. Я просто хочу сказать, что не стоит тратить время и деньги на проекты, которые не приносят тебе радости и не ценят твой вклад. В мире столько возможностей, чтобы создавать крутые вещи с классными людьми. Не стоит застревать в токсичных коллабах.