kotlin138
Фикс кнопки «Оформить»: проверка реального Telegram по initData, а не по наличию объекта WebApp; fallback-тост для обычного браузера, кэш v13
Оптимизация загрузки каталога: async SDK Telegram + preconnect/preload products.json, localStorage-кэш (stale-while-revalidate), DocumentFragment в рендере, кэш v10/v12
Нативные цвета Telegram Mini App: шапка/фон/нижняя полоса в тон приложения (#0a0a0f), кэш v9/v11
Адаптивная вёрстка сайта: жидкая сетка карточек (auto-fill) вместо фикс. колонок, масштабирование текста/кнопок, центровка max-width 1600px, кэш v8/v10
Оптимизация картинок сайта: фикс битой funkylands_device.jpg, png→jpeg 400×400, удаление 206 неиспользуемых файлов, кэш-версии v7/v9
Фикс «Продолжить покупки» + добавление товара без запроса количества
Звук уведомления в админке при новом заказе/смене статуса
Запоминание данных доставки: телефон и адрес подставляются при следующем заказе
Авто-адрес по геолокации: кнопка «Поделиться адресом» с reverse-geocoding
Уведомления в админке: новый заказ и смена статуса в реальном времени
Заказы в веб-админке: список, статистика, пользователи, смена статуса
feat(bot): catalog is now driven by admin's site/products.json (live reload, cartridges flattened)
feat(admin): add/remove puffs at category level (all brands) with + button on the right
feat: show puffs step for disposables without brand selection (union of values)
feat(admin): manage per-brand puff counts (add/edit/delete) + site reads brand.puffs
feat(admin): puff-count chips row on main page (filter + prefilled add-product form)
feat(admin): puff-count chips in product form (click to set, like on the site)
feat: 3-step navigation for disposables (brand → puffs → flavor); puffs field in admin; remove test product
feat(admin): show edit icon on every category tab in edit mode
feat(admin): edit mode toggle — add/edit/delete buttons active only after pressing «Редактирование»
Все инструменты для разработки на одной платформе
Для полного доступа зарегистрируйтесь или авторизуйтесь на GitVerse