Radio Burger — сайт, PWA, система онлайн-заказов и постоянное сопровождение
Radio Burger
Full-stack разработка + SEO + постоянное сопровождение
Автоматизация ресторана и разработка приложения для доставки еды для уличного кафе в Санкт-Петербурге: сайт-визитка, PWA-приложение для клиентов, Kanban-панель для персонала, real-time система заказов, SEO-продвижение и регистрация домена. Разработано за 38 дней — от Prisma-схемы до боевого деплоя с SSL и PM2, дальше — на постоянном сопровождении.








дней разработки
коммитов в репозитории
потерянных заказов
строк TypeScript-кода
API-эндпоинтов
цикла security audit
Задача
Radio Burger работал через Telegram-группу: клиенты писали заказы вручную, администраторы вели учёт в мессенджере. Заказы терялись, оплата не отслеживалась, аналитики не было. При любом сбое Telegram — бизнес останавливался полностью. Фото блюд не обновлялись, не было инструмента для управления меню. У бизнеса не было ни собственного сайта, ни домена, ни какой-либо видимости в поиске.
Решение
Разработана full-stack экосистема на Next.js 14 + PostgreSQL + Socket.io: отдельный сайт-визитка для первого знакомства с брендом и PWA-приложение для заказов (меню → корзина → заказ → чат → СБП QR-оплата), Kanban-дашборд для персонала с real-time обновлениями и звуковыми сигналами, CRUD-панель для управления меню с автоконвертацией фото в WebP. Push-уведомления — без Firebase, через нативный Web Push API (VAPID), данные строго на серверах РФ (152-ФЗ). Отдельно зарегистрировали домен, включая обязательную с 01.09.2026 идентификацию владельца .ru-домена через Госуслуги (ЕСИА), и провели полную SEO-оптимизацию с индексацией сайта в поисковых системах. Проект не закрыт разовой сдачей — администрирование, поддержка и развитие системы остаются на постоянной основе.
Технологический стек
| Слой | Технология | Задача |
|---|---|---|
| Frontend | Next.js 14 + React 18 | App Router, Server Components, SEO |
| Язык | TypeScript strict mode | Типобезопасность, ноль any |
| Стили | Tailwind CSS | Utility-first, адаптивность |
| База данных | PostgreSQL 15 | Серверы Beget РФ (152-ФЗ) |
| ORM | Prisma | Типобезопасный доступ к БД, Studio GUI |
| Real-time | Socket.io | WebSocket + fallback polling для чата и заказов |
| Аутентификация | NextAuth.js v5 | JWT, httpOnly cookies, TTL 4 часа |
| Push-уведомления | Web Push API (VAPID) | Без Firebase — данные строго в РФ |
| Валидация | Zod | Схемы для всех API-входов (15+ схем) |
| PWA | next-pwa | Service Workers, офлайн-режим, install prompt |
| Деплой | Beget VPS + Nginx + PM2 | SSL, reverse proxy, автоперезапуск |
Хронология проекта
Фундамент: Prisma-схема (11 моделей), NextAuth v5, маршруты и роли (~30 коммитов)
PWA-клиент: меню, корзина, заказы, Socket.io real-time, Web Push (~60 коммитов)
Дизайн-спринт: 32 коммита за 1 день — Figma → код, Hero, анимации, SVG-рамка, логотип
Мобильная адаптация: iOS safe-area, PWA install prompt, платёжный флоу (~25 коммитов)
Чат + безопасность: 4 цикла security audit, CSP ужесточён, rate limit, DB-индексы (~58 коммитов)
Kanban-дашборд, аналитика, Telegram-уведомления о новых заказах (~10 коммитов)
Прод-стабилизация: Samsung Galaxy Tab landscape, iOS safe-area landscape, финальный деплой PM2
Что мы сделали
Хотите такой же результат?
Разберём вашу задачу на бесплатной консультации