backend frontend каталог продукции
·

Онлайн-каталог промышленной электроники и оборудования для компании «Delasia»

За 3 месяца создали каталог продукции с более чем 600 тыс. товарных позиций.

Задача

Компания «Delasia» обратилась к нам, чтобы создать онлайн-каталог своей продукции, который насчитывает более 600 тыс. товарных позиций.

Основная цель сайта — получать входящий трафик из поисковиков за счёт SEO-оптимизации карточек товаров по партномерам и артикулам.

Клиент хотел как можно быстрее разработать MVP и запустить проект, чтобы начать лидогенерацию.

Delasia занимается комплексными поставками оригинальной электронной и технической продукции для промышленных предприятий.

Требования к проекту

Работа над любым сайтом начинается со сбора требований. Часть из них касаются технической стороны проекта:

  • В качестве исходных данных для каталога клиент предоставил SQL-выгрузку товаров и архив изображений.
  • Было решено, что сайт пока не нуждается в CMS (админке).
  • Для обновления товаров на сайте нужно настроить регулярный автоматический импорт из выгрузки.
Первый экран на главной странице сайта
Первый экран на главной странице сайта

Отдельная группа требований касается SEO — поискового продвижения:

  • SEO-специалисты заказчика посчитали оптимальным оставить англоязычные наименования товаров, без перевода.
  • При этом все разделы каталога, а также все характеристики в фильтре должны быть на русском языке.
  • Сайт должен хорошо ранжироваться в поиске, поэтому нужно было учесть все требования по SEO для каталога и детальных страниц. В том числе прописать ЧПУ (человеко-понятные url), заголовки и метатеги.

В плане дизайна главное требование — соответствовать фирменному стилю (брендбуку).

Блок основных категорий на главной странице
Блок основных категорий на главной странице

Страницы и функции

Перед нами стояла задача разработать и запустить проект в кратчайшие сроки. Поэтому в план разработки попали только те страницы и функции, которые минимально необходимы для работы сайта:

  • Главная страница с блоками: преимущества, разделы, новинки.
  • Каталог с древовидной структурой разделов.
  • Поиск по артикулам и названиям.
  • Список товаров раздела с возможностью фильтрации по свойствам.
  • Детальные страницы товаров с подробной информацией и блоком похожих продуктов.
  • Форма заявки в разных местах сайта (на главной странице и на детальной странице товара).
Категории в каталоге
Категории в каталоге

Технологический стэк

PHP

Symfony

TypeScript

Nuxt

MongoDB

Tailwind CSS

В качестве базы данных мы выбрали MongoDB, потому что она хорошо подходит, чтобы хранить данные с разной структурой. Это часто полезно при разработке онлайн-каталогов, потому что у разных категорий товаров могут быть свои специфичные характеристики.

Для бэкенда мы традиционно используем PHP-фреймворк Symfony, потому что это проверенный временем, надежный и гибкий инструмент.

Фронтенд решили строить на фронтенд-фреймворке Nuxt 3. Его особенность — т.н. «универсальный рендеринг» (Universal Rendering), который сочетает лучшее из серверного рендеринга страниц (SSR) и одностраничных сайтов-приложений (SPA).

В результате сайт отлично индексируется поисковиками, и при этом предлагает пользователям максимально комфортный опыт.

В качестве библиотеки компонентов мы впервые попробовали Nuxt UI Pro и оказались довольны результатом. Nuxt UI Pro содержит много готовых компонентов, что позволяет быстро собирать страницы. Также, он сразу из коробки предлагает разные удобные мелочи, вроде темной и светлой темы.

При этом дизайн сайта можно легко адаптировать под фирменный стиль клиента благодаря тому, что в Nuxt UI используется популярная фронтенд-библиотека Tailwind CSS, которая упрощает вёрстку.

Список товаров определенной категории
Список товаров определенной категории

Рабочие процессы

Выстроенные рабочие процессы обеспечивают комфортное взаимодействие с клиентом и эффективную работу команды. Вот некоторые принципы, которые мы применяли на этом проекте:

  • Сразу учитываем ограничения по срокам и бюджетам.
  • Работаем по Time & Material (по факту выработанных часов).
  • Чётко оговариваем зоны ответственности, как между нами и заказчиком, так и внутри нашей команды.
  • Заранее закладываем в бюджет проекта ресурсы на правки, важные доработки и непредвиденные сложности, которые бывают на любом проекте.
  • Стараемся максимально распараллеливать задачи. Например, разработку фронтенда можно начать ещё до того, как готов бэкенд, за счёт использования временных «моковых» данных.
  • Проводим для заказчика регулярные демонстрации текущего состояния проекта.
  • Простыми задачами занимаются разработчики, а за архитектурные вопросы (проектирование БД, логика работы фильтров) отвечает тимлид.
  • Специалист по QA (тестировщик) внимательно проверяет проект перед запуском.
  • Заранее готовимся к тому, что после запуска проекты, как правило, требуют дальнейшего развития и доработок на основании фидбека пользователей.
Детальная страница товара
Детальная страница товара

Результат

В итоге мы достигли поставленной задачи в запланированные сроки. Менее чем за 3 месяца был запущен полноценный онлайн-каталог с многоуровневым деревом категорий, фильтрацией, поиском, детальной страницей, подборками похожих товаров и с формами отправки заявки.

Оценить результат нашей работы можно по ссылке ниже:


Расскажите о вашей задаче

Все поля формы обязательны