О проекте

Что настоящее, что вымышлено

«Дровяная» это демо для портфолио: показать на живом примере, как выглядят заказ словами, кухня в реальном времени и бот. Пиццерии нет, а всё остальное работает.

Работает

Заказы
Каждый заказ с сайта или из бота попадает в базу на сервере, получает номер и живёт там сутки, потом чистится.
Разбор текста
Фразу вроде «две маргариты без лука к семи на Ленина 5» читает GigaChat и собирает из неё заказ по меню. Если модель не отвечает, работает разбор по правилам: соображает проще, но заказ всё равно соберёт.
Кухня
Панель заказов получает новые заказы сразу, без обновления страницы, и двигает их по статусам. Вход по демо-паролю, он написан на странице входа.
Бот в Telegram
Заказ можно написать боту так же, как на сайте, подтвердить кнопкой и получать статусы сообщениями. Со страницы заказа с сайта тоже можно подписаться на статусы в Telegram.
Страница заказа
Обновляется сама, как только кухня нажала кнопку. Ничего перезагружать не нужно.
Лимиты
Чтобы демо нельзя было сломать, число разборов и заказов с одного адреса ограничено, а старые заказы удаляются сами.

Придумано

Пиццерия
«Дровяная», ул. Профсоюзная, 12, часы с 11:00 до 23:00. Такого заведения в Казани нет.
Меню и цены
Похожи на настоящие, но придуманы для примера. Размеры, добавки и «без лука» работают, потому что так устроен разбор, а не потому что где-то есть повар.
Доставка и оплата
Курьер никуда не поедет, деньги ни с кого не спишутся. В демо «оплата при получении», и никакой оплаты нет.
Отзывы и цифры
Их здесь нет специально. Ни «10 000 довольных гостей», ни звёздочек: придумывать такое было бы нечестно.

На чём это собрано

Next.js
сайт, страницы и API в одном сервере на обычном VPS
SQLite
база заказов одним файлом рядом с сервером, без отдельной СУБД
GigaChat API
разбор свободного текста в структурированный заказ, правила как страховка
grammY
бот в Telegram, вебхук принимает тот же сервер
SSE
кухня и страница заказа получают изменения по открытому соединению, без кнопки «обновить»

Откуда фото

Пиццы, закуски и десерты сняты не в настоящем зале: кадры сделаны для демо. Напитки и часть закусок — стоковые фотографии с Pexels, их лицензия разрешает коммерческое использование. Чужих логотипов и брендов в кадре нет. Знак, вёрстка и карта зон нарисованы для этого проекта.

Кто сделал

Алексей, веб-разработчик. Сайты с заказами, боты в Telegram и MAX, разбор текста внутри бизнес-процесса. Если нужно что-то похожее, пишите.