Задача
Разработать сервис данных о продуктах питания для сторонних приложений. Нужен был API с поиском, документацией и управлением доступом: выдачей ключей пользователям и настройкой лимитов
Отдельная часть работы – инструменты для ведения каталога и контроля работы сервиса. Затем на базе API добавили поиск по каталогу и дневник питания
Реализация
Разработали API с данными о продуктах, брендах, пищевой ценности и порциях. Подготовили документацию OpenAPI. Доступ управляется ключами, для пользователей можно устанавливать лимиты запросов
Реализовали полнотекстовый поиск с обработкой опечаток, подсказками и поиском по штрихкоду. Продукты можно находить сканированием штрихкода с камеры
Сделали админку для добавления, редактирования и удаления продуктов. Страницы каталога подготовили к поисковому продвижению, а для API разработали отдельный лендинг с анимациями
В дневнике можно сканировать штрихкоды, добавлять собственные продукты и выбирать из недавних с учётом их использования. Поддерживаются порции и расчёт пищевой ценности
Настроили мониторинг бизнес-показателей и метрик приложений, сбор собственной аналитики производительности сайта. Добавили защиту от ботов и автоматического сбора данных
Результат
Создали API-сервис с документацией, управлением доступом и инструментами для ведения каталога. Поиск по каталогу и дневник питания работают на его базе и показывают, как данные можно использовать в пользовательском приложении