Новости VespShop

Давненько ничего не писал - завален работой. Но в этом есть и хорошая сторона, значит будет что потом рассказать.
На данный момент у меня проект по переносу большого работающего магазина с miniShop2 на Vesp. Причина - магазин хотят развивать, делать всякие сложные скидки с акциями, а на MODX это делать непросто. Причём заказчик хочет, чтобы переехал только магазин, а статьи и прочее остались как есть - на MODX.
GIFка на 5мб!
И получается очень интересная интеграция, когда категории, товары, заказы и юзеры работают на Vesp, а в MODX подгружаются специальным сниппетом через вызов API. Плюсом к этому идёт рендер чанков в MODX на Fenom, с последующим их "оживлением" Vue.
А это значит, что нужные скрипты и стили собираются Webpack и подгружаются в MODX через плагин. В общем, очень сложно это было придумать и засунуть в Docker, зато теперь легко разрабатывать.
Отдельным вызовом стала мультиязычность, которую можно сделать сразу как надо. Все (вообще все) переводимые колонки вынесены в отдельные таблицы и подключаются свойствами при выборке. Это позволяет и переключать языки на лету, и делать поиск сразу по всем языкам.
Еще GIF на 4 мб Английский в админке нужен только для меня, а то по-немецки и французски моя совсем не понимать.
Планирую сдать проект в конце января-февраля.
Еще хорошая новость - цена на мои заметки по Vesp снижена вдвое. Сделано это чтобы поднять немного активность на сайте, а то вопросы совсем задавать перестали - видимо их уже нет.
Именно на этом курсе я заложил основу текущего проекта магазина и теперь развиваю дальше. Если всё сложится хорошо, возможно какие-то из новых решений потом вернутся обратно.
Скидка на время оставшихся праздников, а там посмотрим.

14 комментариев

Александр Наумов
Василий, добрый день!
Все что ты делаешь - это очень здорово и большое тебе спасибо за твой труд!
Чем больше погружаюсь в Vesp, тем больше получаю удовольствие от разработки.
По ощущениям, Vesp в отличие от MODX раз в пять экономит время на разработку.
Лично мне хотелось бы в перспективе увидеть курсы по VespShop 2 и другие курсы.
Василий Наумкин
Спасибо за оценку!
Курсы, увы, не приносят денег столько, сколько работа на заказ - поэтому они будут по остаточному принципу.
Есть желание и свободное время - сел и написал. Но такого все меньше и меньше, увы.
Александр Наумов
Вопрос про Vesp-frontend https://github.com/bezumkin/vesp-frontend :
Как я понял Vesp-frontend это прокачанный Nuxt, инструмент исключительно для фронтендеров?
Василий Наумкин
Типа того, да - настроенный пакет с моими добавками, который устанавливается в Vesp для работы фронта.
Так же как и vesp/core устанавливается для бэкенда.
Александр Наумов
Спасибо!
Решил сделать малостраничный сайт, на статических страницах, без беконда. Взял Nuxt и стал устанавливать модули, а потом подумал, что все это уже реализовано в Vesp-frontend. В итоге все сделал на Vesp-frontend, получилось быстрее и проще.
Интересно, а технически возможно сделать сборку, которая позволяет разворачивать малостраничный сайт без беконда по запуску одной команды?
Например, сейчас ставлю Nuxt + Vesp-frontend, где еще в установке Nuxt нужно правильно выбрать параметры, чтоб не дублировать axios, bootstrap и т.д. Хотелось бы сделать сборку Nuxt + Vesp-frontend + свои наработки и ставить одной командой?
Василий Наумкин
@vesp/frontend уже тянет все нужные зависимости: и сам Nuxt, и Bootstrap-Vue и Bootstrap 4 и даже FontAwesome
Просто переходишь в любую пустую директорию и вызываешь
yarn add @vesp/frontend
И всё это установится.
Если хочется сделать свою сборку - смотри на мой репозиторий и улучшай. А потом читай про публикацию своих пакетов на npmjs, там ничего сложного.
Александр Наумов
Просто переходишь в любую пустую директорию и вызываешь
yarn add @vesp/frontend
Класс!!
А я думал, ориентируясь на пункт 1, что сначала нужно установить Nuxt:
Василий Наумкин
Видимо с первых версий осталось, надо поправить, спасибо!
Александр Наумов
Просто переходишь в любую пустую директорию и вызываешь
yarn add @vesp/frontend
И всё это установится.
Василий, но как запустить сайт без прпедварительной установки Nuxt, у меня в корне файл package.json имеет такое содержание?
{
  "dependencies": {
    "@vesp/frontend": "^0.17.3"
  }
}
Василий Наумкин
Теперь я понял, зачем нужно сначала ставить Nuxt - он создаст тебе все нужные базовые папочки и файлики, куда потом можно подключать @vesp/frontend.
Так-то их можно создать и вручную, но это дольше. Поэтому и моя инструкция, и твой изначальный подход были верными.
Извини, что немного запутал =)
Александр Наумов
Понял, спасибо!
Александр Наумов
И еще, правильно ли я понимаю:
Если я выбираю Bootstrap при установке Nuxt, то мне приходится использовать все модули Bootstrap вне зависимости нужны они мне или нет, а если я использую Bootstrap из Vesp-frontend, то здесь я имею возможность использовать только нужные мне модули и ничего лишнего?
Василий Наумкин
Думаю, это одно и то же.
Просто у меня в конфиге прописано не подключать сразу всё, а добавлять компоненты поштучно, чтобы работал tree shaking.
Александр Наумов
Спасибо!!
bezumkin.ru
Личный сайт Василия Наумкина
Прямой эфир
Василий Наумкин
03.12.2024, 13:13:34
Генерация - это создание статичный файлов, для их работы потом pm2 не нужен, только правильная настр...
Василий Наумкин
22.11.2024, 03:33:54
Спасибо!
inna
06.11.2024, 15:47:13
Да. Все работает. Спасибо.
Василий Наумкин
01.07.2024, 11:56:41
Да, верно, именно так. А в контроллере, скорее всего, ловить данные методом post.
Василий Наумкин
26.06.2024, 09:38:15
О, точно, вылезает если не залогинен. Спасибо, исправил!
Василий Наумкин
09.04.2024, 04:45:01
> Ошибка 500 Это не похоже на ошибку Nginx, это скорее всего ошибка PHP - надо смотреть его логи. ...
Василий Наумкин
20.03.2024, 21:21:52
Volledig!
Андрей
14.03.2024, 13:47:10
Василий! Как всегда очень круто! Моё почтение!
russel gal
09.03.2024, 20:17:18
> А этот стоило написать хотя бы затем, чтобы получить комментарий от юзера, который ничего не писал...
Александр Наумов
27.01.2024, 03:06:18
Василий, спасибо! Извини, тупанул.