Meal Finder main image

Project Description & Details

Задача

Meal Finder решает прикладную задачу: Создал приложение для поиска рецептов с использованием TheMealDB API. Реализовал поиск в реальном времени, генерацию случайных рецептов и детальные карточки блюд со списком ингредиентов. Интегрировал обработку ошибок API и динамическое обновление интерфейса.

Это учебный проект (завершён и используется), где отрабатывались конкретные паттерны и инструменты без лишней обвязки.

Кейс демонстрирует типовой цикл разработки: постановка → прототип → стабилизация → сопровождение.

Перед стартом зафиксировали критерии готовности: понятный первый экран, предсказуемые ошибки форм, возможность доработки без переписывания половины кодовой базы.

Решение

Сделана учебная, но полноценная реализация с акцентом на читаемость кода и воспроизводимую сборку.

Сценарии спроектированы так, чтобы основные действия укладывались в один–два экрана: меньше переключений, меньше ошибок при вводе. Навигация и подписи полей согласованы с привычными паттернами — пользователю не нужно «учить интерфейс».

Отдельное внимание — состояния загрузки и пустые списки: skeleton/spinner там, где данные приходят асинхронно, и понятные empty-state тексты вместо пустой таблицы.

Архитектура и стек

UI и клиент: HTML5, CSS3.

Сервер и данные: REST API.

Инфраструктура и утилиты: JavaScript.

Распределение языков в репозитории: JavaScript (46.3%), CSS (38.6%), HTML (15.1%).

Слои разделены так, чтобы UI не знал деталей транспорта: адаптеры API/хранилища, доменные типы, компоненты представления. Это упрощает замену бэкенда и точечные UX-правки.

Ключевые функции

  • JavaScript — использован в продуктовой логике: снижает количество самописного кода и ускоряет добавление новых экранов.
  • REST API — использован в продуктовой логике: снижает количество самописного кода и ускоряет добавление новых экранов.
  • HTML5 — использован в продуктовой логике: снижает количество самописного кода и ускоряет добавление новых экранов.
  • CSS3 — использован в продуктовой логике: снижает количество самописного кода и ускоряет добавление новых экранов.

Дополнительно:

  • Интеграция и использование JavaScript в продуктовой логике и интерфейсе.
  • Интеграция и использование REST API в продуктовой логике и интерфейсе.
  • Интеграция и использование HTML5 в продуктовой логике и интерфейсе.

Результат

Проект доведён до рабочего состояния: команда/пользователь получает стабильный инструмент вместо ручных таблиц и переписки. Сокращено время на типовые операции за счёт автоматизации в интерфейсе.

Исходный код открыт: https://github.com/astropsy999/Meal-Finder — можно оценить структуру модулей и стиль коммитов.

Что бы улучшил

Добавил бы e2e-тесты на критичные сценарии и вынес бы конфигурацию в отдельный слой для экспериментов. Для публичного demo — CI-сборку и preview-окружение на каждый pull request.

FAQ

What is «Meal Finder» for?

Developed a meal discovery application using TheMealDB API. Implemented real-time search, random meal generation, and detailed recipe views with ingredient lists and cooking instructions. Features dynamic DOM updates and error handling for API interactions.

Which stack powers «Meal Finder»?

Technologies: JavaScript, REST API, HTML5, CSS3.

Project information

LearningCompleted

Technologies Used

JavaScriptREST APIHTML5CSS3

Languages

JavaScript (46.3%)CSS (38.6%)HTML (15.1%)