Кейс · Клиентский проект

Портфолио фотографа

Портфолио продакшн-уровня для профессионального фотографа — двуязычное, на CMS, с приватным разделом цен и автоматическими письмами по заявкам.

РольДизайн и full-stack разработка
ТипКлиентский проект
СтатусВ продакшене
Год2024
Next.js 16TypeScriptSanitynext-intlSupabaseResendVercel
Портфолио фотографа — desktop
Портфолио фотографа — mobile

Обзор

Профессиональному фотографу из Кишинёва нужен был сайт-портфолио, который красиво показывает его работы, поддерживает двуязычный контент (RO / EN), позволяет управлять всем самостоятельно, без разработчика, и закрывает страницу с ценами паролем.

Результат — аккуратный редакционный сайт с тёмной эстетикой, быстрой загрузкой изображений через пайплайн Sanity, полностью рабочей формой связи на Resend и приватным разделом цен на основе Supabase.

Задача

  • Точность изображений — Lighthouse ≥ 90, без артефактов сжатия
  • Полностью двуязычный RO/EN с переключением языка на уровне маршрута
  • Самостоятельная headless CMS, чтобы фотограф обновлял контент без кода
  • Приватный раздел цен — для просмотра нужен пароль
  • Надёжные заявки — форма связи с подтверждением по e-mail

Подход

Редакционный дизайн

Тёмный просторный макет, дающий фотографии «дышать». Типографическая иерархия на Inter + JetBrains Mono.

Headless CMS

Sanity Studio для всего контента — галереи, био, пакеты, отзывы. Обновления без кода.

По-настоящему двуязычный

Локализация на уровне полей в Sanity, next-intl для маршрутизации и текстов, hreflang для SEO.

Приватный раздел цен

Аутентификация на основе Supabase. Клиенты вводят общий пароль, чтобы открыть страницу с ценами.

Транзакционная почта

Интеграция Resend для подтверждений формы связи — и клиенту, и фотографу.

Брендированные соц-карточки

Кастомный OG-маршрут, рендерящий изображения галереи с бренд-оверлеем.

Технические решения

  • Система точности изображений — URL-ы Sanity с quality=90, format=webp, адаптивные размеры
  • Кастомный OG-маршрут — next/og с динамической вставкой изображений Sanity
  • Чистая i18n-маршрутизация — /ro и /en с автоматическим редиректом с корня

Результат

  • В продакшене с 2024 года
  • Клиент управляет всем контентом самостоятельно через Sanity Studio
  • Приватный раздел цен, предотвращающий публичный сбор цен
  • Брендированные превью для соцсетей на каждой странице галереи

Хотите что-то подобное?

Есть идея проекта? Давайте обсудим, что я могу для вас создать.

Начать проект
Портфолио фотографа · vanyasmvdev