- Принимает список ингредиентов на русском/английском и возвращает 4 рецепта, в которых применяются эти ингредиенты. Минимизирует количество неиспользуемых ингредиентов.
- ASP.NET Core 10
- LibreTranslate 1.9 (перевод ингредиентов/рецептов)
- SpoonacularAPI (англоязычный агрегатор рецептов)
- Redis (кэширование запросов/переводов)
- Приложение получает список рецептов на русском языке. Передаёт их LibreTranslate, который переводит их на английский, и кэширует.
- Запрос с переведённым списком ингредиентов отправляется SpoonacularAPI, ответом является список рецептов на английском.
- Рецепты передаются в LibreTranslate, который переводит их на русский, и кэшируются.
- Приложение возвращает список рецептов на русском.
Для запуска приложения необходимо:
- Указать API ключ Spoonacular в переменной SPOONACULAR_API_KEY в файле .env. Для этого необходимо зарегистрироваться на сайте и получить API ключ. Лимит 48 уникальных запросов в день в бесплатном плане.
- Запустить проект в корне проекта с помощью команды:
docker compose up
- Приложение использует интерфейс Swagger UI для тестирования API, который находится по адресу: http://localhost:5000/swagger/index.html
В случае возникновения проблем с запуском сервиса переводчика рекомендуется переехать в другую страну (сервисы запускаются на хосте).