Кейс 06 / 17 · Маркетплейс цифровых товаров · 2026

Digimart

Полноценный маркетплейс для продажи цифровых товаров — ботов, сайтов, скриптов, лендингов, SaaS и шаблонов — с кошельком, выводом средств и модерацией.

https://digimart.top

  • Время разработки: 16 дней
  • Модулей API: 20+
  • Способов вывода: 14+
  • Категорий товаров: 6

Задача

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

Решение

Монорепозиторий на pnpm workspaces: React 18 + TypeScript фронтенд и NestJS + TypeScript бэкенд с общим пакетом типов. Postgres через Prisma, Redis для очередей и кэша, MinIO/S3 для файлов, Socket.IO для реалтайма, BullMQ для фоновых задач, всё поднимается в Docker Compose.

Ключевое

React 18 + NestJS + Postgres · Prisma + Redis + MinIO · Socket.IO + BullMQ · Docker Compose

Что сделано

  • Регистрация с подтверждением email, восстановлением пароля и вход через Telegram Login Widget
  • JWT-аутентификация с refresh-токенами, 2FA (TOTP) и хешированием паролей
  • Ролевая система с гранулярными разрешениями: покупатель, продавец, модератор, админ
  • Каталог с категориями, поиском, фильтрами и карточками товаров
  • Витрина продавца с кастомным баннером (загрузка, обрезка и масштабирование прямо в браузере) и описанием
  • Загрузка файлов товара с версионированием, changelog и раздачей через presigned S3-ссылки только после покупки
  • Кошелёк: баланс, история операций, холд средств на 14 дней после продажи, вывод на карту/крипту через CrystalPay
  • Реальные способы вывода и их лимиты подтягиваются напрямую из API платёжного шлюза, а не захардкожены
  • Споры между покупателем и продавцом с админским разрешением и возвратом средств
  • Чат по заказу между покупателем и продавцом
  • Отзывы и рейтинг продавца, агрегированные по реальным оценкам, а не по товару
  • Реферальная программа с начислением бонусов
  • Уведомления: в приложении, по email (Resend) и в Telegram-бота с привязкой аккаунта
  • Панель администратора: модерация товаров, управление пользователями, логи действий, баннеры, промокоды, настройки платформы
  • Защита от гонки при покупке лимитированных по остатку товаров
  • SEO: sitemap.xml, robots.txt, метатеги на страницах товаров
  • Тёмная тема, адаптивная вёрстка на Tailwind CSS
  • Docker Compose для локальной разработки и продакшена, миграции Prisma

Этапы

  1. Проектирование (2 дня) — Схема БД, ролевая модель, архитектура кошелька и холдов, интеграция платёжного шлюза
  2. Backend (5 дней) — NestJS API, Prisma-модели, S3-загрузка файлов, платежи и выводы, очереди BullMQ
  3. Frontend (4 дня) — Каталог, карточка товара, кабинет продавца, кошелёк, чат заказа, витрина
  4. Модерация и безопасность (3 дня) — Админ-панель, 2FA, споры, антифрод-проверки, логи действий
  5. Продакшен (2 дня) — Docker Compose, деплой на сервер, email/Telegram-интеграции, оптимизация

Следующий проект: Apex