Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛍️ Fashion Try-On Backend API

Java Spring Boot PostgreSQL Maven

🎯 Привет Внедрейдерам!

Этот репозиторий подготовлен для хакатона "Внедрейд" от Orion Soft вместе с такими партнерами как:

  • 🛍️ LamodaTech
  • 🛒 Magnit Tech
  • 🏦 Т-Банк
  • 📦 CDEK
  • 🏪 Авито

Вас приветствует команда Hackoholics! 🚀

🎨 О проекте

Этот Backend API является центральным посредником в AR-примерочной системе для LamodaTech. Он связывает:

  • 📱 iOS приложение (frontend)
  • 🗄️ PostgreSQL базу данных (каталог товаров и категорий)
  • 🤖 ML сервер (OOTD inference модель)

🔄 Архитектура системы

iOS App ↔ Java Backend ↔ PostgreSQL Database
                ↕
            ML Server (OOTD)

✨ Что реализовано:

  • 📦 Каталог товаров: Управление одеждой по категориям
  • 🛍️ API для iOS: RESTful endpoints для мобильного приложения
  • 🤖 Интеграция с ML: Асинхронные вызовы OOTD модели
  • 🗄️ База данных: PostgreSQL для хранения товаров и результатов
  • 📸 Управление изображениями: Загрузка, обработка, хранение
  • 🔄 Workflow: Полный цикл от выбора товара до виртуальной примерки

🖥️ Системные требования

Компонент Версия/Характеристика
Java 17+
Spring Boot 3.2+
PostgreSQL 15+
Maven 3.8+
RAM 8GB+
Disk 5GB+ (для изображений)

📱 API для iOS приложения

🛍️ Основные группы endpoints:

  • 📦 Каталог товаров: Получение категорий, товаров по категориям, поиск
  • 🎨 Виртуальная примерка: Создание сессий, проверка статуса, получение результатов
  • ❤️ Избранное: Сохранение понравившихся примерок
  • 📸 Изображения: Загрузка фото пользователей, получение результатов
  • 📊 Статистика: История примерок пользователя

📚 Документация API

Полная документация со всеми endpoints, примерами запросов и ответов доступна в Postman:

📋 Postman Collection - Fashion Try-On API

Коллекция включает:

  • ✅ Все endpoint-ы с примерами
  • 🔧 Готовые тестовые данные
  • 📝 Подробные описания параметров
  • 🎯 Примеры успешных и ошибочных ответов
  • 🔄 Workflow сценарии для тестирования

🏗️ Архитектура Backend

🔄 Основные компоненты:

  • Controllers: REST endpoints для iOS приложения
  • Services: Бизнес логика и интеграция с ML сервером
  • Repositories: Работа с PostgreSQL базой данных
  • DTOs: Безопасная передача данных между слоями
  • Entities: Модель данных (категории, товары, сессии)

🔄 Интеграция с ML сервером

🤖 Принцип работы:

  1. Прием запроса от iOS приложения с фото пользователя и ID товара
  2. Получение товара из PostgreSQL базы данных
  3. Конвертация изображений в base64 формат
  4. Асинхронный вызов OOTD ML сервера
  5. Сохранение результата и обновление статуса в БД
  6. Уведомление клиента о готовности результата

⚡ Особенности реализации:

  • Асинхронная обработка: Не блокирует iOS приложение
  • Polling механизм: Клиент проверяет статус выполнения
  • Retry логика: Повторные попытки при сбоях ML сервера
  • Timeout handling: Корректная обработка долгих запросов
  • Error recovery: Graceful degradation при недоступности ML сервера

📱 Интеграция с iOS

🔄 Workflow взаимодействия:

  1. Загрузка каталога: iOS запрашивает категории и товары
  2. Выбор товара: Пользователь выбирает понравившийся item
  3. Фото пользователя: Загрузка selfie через камеру
  4. Создание сессии: Отправка данных на backend
  5. Polling статуса: Проверка готовности результата
  6. Получение результата: Отображение виртуальной примерки
  7. Сохранение в избранное: Опционально

📱 Технические требования для iOS:

  • HTTP Client: URLSession с поддержкой multipart/form-data
  • Image Processing: Сжатие фото до 2MB для быстрой загрузки
  • Async/Await: Современный подход к асинхронным операциям
  • Error Handling: Graceful обработка сетевых ошибок
  • Caching: Кэширование каталога товаров для offline режима

🔧 Администрирование

🛡️ Админ панель endpoints:

  • Управление товарами: Добавление, редактирование, удаление
  • Управление категориями: CRUD операции для категорий
  • Аналитика: Статистика по примеркам и популярным товарам
  • Мониторинг: Состояние ML сервера и производительность
  • Управление пользователями: Просмотр активности и избранного

📊 Метрики и мониторинг:

  • Health checks: Проверка доступности всех сервисов
  • Performance metrics: Время ответа API и ML сервера
  • Usage analytics: Статистика использования функций
  • Error tracking: Логирование и отслеживание ошибок

🎉 Благодарности

Огромное спасибо:

  • LamodaTech за интересную задачу AR-примерочной
  • Orion Soft за организацию хакатона "Внедрейд"
  • PostgreSQL Community за надежную базу данных
  • Spring Team за отличный фреймворк
  • Всем участникам команды Hackoholics

Всем хорошего настроения и успешного хакатона! 🚀✨

Made with ❤️ by team Hackoholics for Внедрейд Hackathon# 🛍️ Fashion Try-On Backend API

Java Spring Boot PostgreSQL Maven

🎯 Привет Внедрейдерам!

Этот репозиторий подготовлен для хакатона "Внедрейд" от Orion Soft вместе с такими партнерами как:

  • 🛍️ LamodaTech
  • 🛒 Magnit Tech
  • 🏦 Т-Банк
  • 📦 CDEK
  • 🏪 Авито

Вас приветствует команда Hackoholics! 🚀

🎨 О проекте

Этот Backend API является центральным посредником в AR-примерочной системе для LamodaTech. Он связывает:

  • 📱 iOS приложение (frontend)
  • 🗄️ PostgreSQL базу данных (каталог товаров и категорий)
  • 🤖 ML сервер (OOTD inference модель)

🔄 Архитектура системы

iOS App ↔ Java Backend ↔ PostgreSQL Database
                ↕
            ML Server (OOTD)

✨ Что реализовано:

  • 📦 Каталог товаров: Управление одеждой по категориям
  • 🛍️ API для iOS: RESTful endpoints для мобильного приложения
  • 🤖 Интеграция с ML: Асинхронные вызовы OOTD модели
  • 🗄️ База данных: PostgreSQL для хранения товаров и результатов
  • 📸 Управление изображениями: Загрузка, обработка, хранение
  • 🔄 Workflow: Полный цикл от выбора товара до виртуальной примерки

🖥️ Системные требования

Компонент Версия/Характеристика
Java 17+
Spring Boot 3.2+
PostgreSQL 15+
Maven 3.8+
RAM 8GB+
Disk 5GB+ (для изображений)

📱 API для iOS приложения

🛍️ Основные группы endpoints:

  • 📦 Каталог товаров: Получение категорий, товаров по категориям, поиск
  • 🎨 Виртуальная примерка: Создание сессий, проверка статуса, получение результатов
  • ❤️ Избранное: Сохранение понравившихся примерок
  • 📸 Изображения: Загрузка фото пользователей, получение результатов
  • 📊 Статистика: История примерок пользователя

📚 Документация API

Полная документация со всеми endpoints, примерами запросов и ответов доступна в Postman:

📋 Postman Collection - Fashion Try-On API

Коллекция включает:

  • ✅ Все endpoint'ы с примерами
  • 🔧 Готовые тестовые данные
  • 📝 Подробные описания параметров
  • 🎯 Примеры успешных и ошибочных ответов
  • 🔄 Workflow сценарии для тестирования

🔄 Интеграция с ML сервером

🤖 Принцип работы:

  1. Прием запроса от iOS приложения с фото пользователя и ID товара
  2. Получение товара из PostgreSQL базы данных
  3. Конвертация изображений в base64 формат
  4. Асинхронный вызов OOTD ML сервера
  5. Сохранение результата и обновление статуса в БД
  6. Уведомление клиента о готовности результата

⚡ Особенности реализации:

  • Retry логика: Повторные попытки при сбоях ML сервера
  • Timeout handling: Корректная обработка долгих запросов

📱 Интеграция с iOS

🔄 Workflow взаимодействия:

  1. Загрузка каталога: iOS запрашивает категории и товары
  2. Выбор товара: Пользователь выбирает понравившийся item
  3. Фото пользователя: Загрузка selfie через камеру
  4. Создание сессии: Отправка данных на backend
  5. Polling статуса: Проверка готовности результата
  6. Получение результата: Отображение виртуальной примерки
  7. Сохранение в избранное: Опционально

📱 Технические требования для iOS:

  • HTTP Client: URLSession с поддержкой multipart/form-data
  • Image Processing: Сжатие фото до 2MB для быстрой загрузки
  • Async/Await: Современный подход к асинхронным операциям
  • Error Handling: Graceful обработка сетевых ошибок
  • Caching: Кэширование каталога товаров для offline режима

🎉 Благодарности

Огромное спасибо:

  • LamodaTech за интересную задачу AR-примерочной
  • Orion Soft за организацию хакатона "Внедрейд"
  • PostgreSQL Community за надежную базу данных
  • Spring Team за отличный фреймворк
  • Всем участникам команды Hackoholics

Всем хорошего настроения! 🚀✨

Made with ❤️ by team Hackoholics for Внедрейд Hackathon

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages