Заказ закрыт
Фронтенд приложение (React + Docker + Nginx) для ToDo

Бюджет: по договоренности
Заказчик выбрал исполнителя:
Станислав Рябцев  
Техническое задание на разработку фронтенд-приложения (React + Docker + Nginx)


Цель проекта:

Разработать клиентскую часть (frontend) учебного проекта с использованием React.
Приложение должно быть структурировано, развёрнуто в Docker-контейнере, использовать Nginx для раздачи статических файлов и быть готовым к подключению к backend API.

Технические требования
• Технологический стек

• Язык: JavaScript или TypeScript

• Фреймворк: React

• Сборка и развёртывание: Docker, Nginx

• Менеджер пакетов: npm или yarn

• Роутинг: react-router-dom

• Сетевые запросы: fetch или axios

• Управление состоянием: useState, useEffect, Context API или Redux (при необходимости)

• Тестирование: React Testing Library

• Для drag-and-drop: react-beautiful-dnd (опционально)


Функциональные требования
• UI-компоненты

• Реализовать переиспользуемые, логически разделённые компоненты интерфейса.

• Вёрстка и логика UI соответствуют тематике проекта (абсолютно любая, сделанная на коленке)
• Маршрутизация

• Настроить маршруты страниц, используя react-router-dom.

• Примеры маршрутов: /, /login, /dashboard, /details/:id.

• Работа с API

• Настроить взаимодействие с backend: получение/отправка данных, обработка ошибок, индикация загрузки.

• Управление состоянием

• Локальное или глобальное управление состоянием (useState, useReducer, Context API, Redux и др.)

• Обновление UI при изменении состояния.

• Тестирование

• Написать автоматические тесты с использованием React Testing Library.

• Покрыть основную бизнес-логику, валидацию форм, граничные сценарии.


Docker и Nginx
• Создать Dockerfile для фронтенд-приложения.

• Настроить docker-compose.yml (если требуется).

• Создать конфигурацию Nginx для раздачи статических файлов.

• Приложение должно запускаться через Docker по адресу localhost.


Структура проекта
• Проект должен быть декомпозирован на модули: компоненты, страницы, сервисы, хуки, утилиты и тесты.

• Структура директорий: components, pages, services, hooks, utils, tests и т.д.


Дополнительное задание (за доплату):
   Добавить возможность перетаскивания элементов (drag-and-drop) с помощью библиотеки react-beautiful-dnd.
• Использовать компоненты DragDropContext, Droppable, Draggable.

• Обработать событие onDragEnd для обновления порядка элементов в состоянии React.


Будет предоставлено Docker приложение бекенда, Todo
Авторизация, Категории для Todo задач, Сами задачи (имя, текст, категория, дата)

Это домашнее задание в учебном заведении, больших требований не предъявляем.
Опубликован 01.06.2025 в 12:41
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.