mndev
UA / EN
Luxury E-Commerce · Діамантовий маркетплейс

Calavera

"Стоковий шаблон Nivoda переробив у luxury діамантовий маркетплейс з інвентарем у реальному часі."

Ювелірний магазин працював на стандартному шаблоні Nivoda — повільно, без можливості змін, клієнти йшли. Побудував з нуля преміальну платформу: пошук менше 50мс по 500K+ діамантах, конструктор каблучок та 8 мікросервісів, які обробляють дані автономно.

Роль: Єдиний розробник — повна відповідальність за архітектуру, фронтенд, бекенд, інфраструктуру та деплой.

Проблема

Стандартна вітрина від Nivoda — без контролю над дизайном, повільне завантаження, клієнти йшли до перегляду каталогу. Власного бекенду не було взагалі — все залежало від Nivoda. Не було можливості побудувати свій пошук, ціноутворення чи процес оформлення замовлення.

Підхід

  • 01Побудував преміальну вітрину на Next.js 16 — редакційний стиль, 14 форм діамантів з інтерактивними діаграмами, відео від постачальників, безкінечна прокрутка з пошуком Typesense по 28 параметрах.
  • 02Створив конструктор каблучок — покроковий процес: оправа → діамант → метал/розмір/гравіювання → перегляд → оформлення. 40+ компонентів інтерфейсу, стан зберігається в PostgreSQL.
  • 03Побудував повний бекенд з 8 мікросервісів замість залежності від Nivoda. Адаптивний сканер розподіляє 500K діамантів за ціновими діапазонами. 200 паралельних обробників завантажують по одній сторінці. Трифазний процес обробки зіставляє, оцінює та рейтингує кожен діамант.
  • 04Кеш з версіонуванням та підтримкою ETag — 95% влучань, відповідь менше 50мс. Система резервування запобігає подвійним продажам через щогодинне оновлення. Атомарне версіонування даних гарантує актуальність інформації.
  • 05Оформлення замовлень через Shopify з чернетками замовлень, 4 способи авторизації (Shopify, Apple, Facebook, Google), можливість поділитися кошиком та списком бажань, промокоди, розрахунок дати доставки.

Жива вітрина · редакційна

calaverajewelry.com
Calavera ring settings page
calaverajewelry.com
Calavera single ring setting page
calaverajewelry.com
Calavera diamond search page

Результат

  • Зі стокового шаблону Nivoda — в повністю кастомну luxury-платформу.
  • 500K+ діамантів у пошуку. Typesense відгук менше 50мс по 28 фасетах.
  • Нуль подвійних продажів з моменту запуску. Холди + атомарне версіонування + погодинний крон.
  • Конструктор каблучок в продакшні — повний сесійний флоу від оправи до чекауту, 40+ компонентів.
  • 43 фронтенд-сторінки, 8 API ендпоінтів, 32 тест-файли (E2E + unit), 22 шарених UI компоненти.
  • 15-сторінковий адмін-дашборд: 487K діамантів, 3 фіди, 99.7% success rate пайплайну.

Бізнес-вплив

Магазин перейшов зі стандартного шаблону Nivoda на повністю власну преміальну платформу. Конструктор каблучок відкрив нові сценарії покупки, яких раніше не існувало. Пошук менше 50мс збільшив глибину перегляду каталогу. Система резервування усунула подвійні продажі — довіра покупців повернулася. 8 мікросервісів обробляють дані автономно, вітрина показує актуальний інвентар без ручного втручання.

Redesign comparison

Шаблон Calavera
Кастомна вітрина
Шаблон Calavera
Кастомна вітрина

Під капотом

Клієнтська вітрина
  • Next.js 16 · React 19 · TypeScript
  • Typesense · 28-фасетний пошук діамантів
  • Конструктор каблучок · 40+ компонентів
  • Radix UI · Embla Carousel · Motion
  • Better Auth · 4 OAuth провайдери
Пайплайн поглинання
  • 8 Azure мікросервісів · Terraform IaC
  • KEDA автоскейлінг · 0→200 воркерів
  • Адаптивне сканування щільності
  • Pricing Engine · Rating Engine
  • Атомарне версіонування датасету
Комерція і дані
  • Shopify Headless · Storefront API
  • Nivoda API · холди діамантів
  • PostgreSQL · Prisma 7
  • Draft orders · промокоди
  • Токени шерінгу кошика + вішліста
Інфра і моніторинг
  • Azure Container Apps · Docker
  • Cloudflare CDN · Vercel
  • Vercel Crons · оновлення холдів
  • Playwright E2E · Vitest
  • CI/CD: typecheck → deploy
Побудовано надовго

Next.js стек — сучасний, стабільний, легко знайти розробника. Не чорна скринька теми.

Активна підтримка

Я продовжую додавати фічі, фікси й інтеграції, поки магазин росте. Без агентського локіну.

Без перебудови через 2 роки

Архітектура масштабується разом з каталогом і трафіком — без примусового реплатформінгу.

Хочете магазин, що працює автономно?

Якщо у вас є legacy-магазин, що втрачає гроші через повільні сторінки, ручне введення замовлень чи крихкі інтеграції — давайте поговоримо. Я веду проєкти від архітектури до запуску і залишаюся їх підтримувати.