Этот проект представляет собой тестовое задание для позиции Frontend разработчика. Он включает в себя страницу поиска сотрудников с предпросмотром профиля.
Необходимо реализовать страницу поиска сотрудников с предпросмотром профиля.
Приложение состоит из одной страницы. Слева осуществляется поиск и отображение результатов, справа — отображается карточка пользователя с личными данными.
Готовый проект выложите на GitHub.
- Можно искать как одного пользователя, так и нескольких (например, Bret, Antonette).
- Поиск должен работать по полю
id
и полюusername
либоname
, на ваше усмотрение. - При выборе способа получения пользователя(пользователей) и фильтрации учитывать, что их может быть больше 2000 человек.
- При изменении состояния в поиске, страница с профилем пользователя должна менять свое состояние, т.е. если открыт профиль пользователя и потом решили удалить все из строки поиска, очищается список найденных пользователей, и страница отображения профиля возвращается в исходное состояние.
В строке поиска пользователя необходимо реализовать запрос к API для получения необходимых юзеров. В случае если результат вернул ошибку (параметры запроса неверные, либо ошибка сервера), необходимо отобразить эту ошибку пользователю. После успешно выполненного запроса, необходимо отобразить полученного пользователя или пользователей в интерфейсе.
- Ссылка на макет: Figma
- Шрифт: Montserrat
- SPA должно быть реализовано с использованием React.
- Необходимо создать основные компоненты.
- Использовать стейт менеджер.
- Стили должны быть написаны с помощью препроцессора SCSS.
- Во время всех запросов нужно сигнализировать пользователю через прелоадер, что происходит запрос.
- Использовать изоляцию стилей.
- Базовый URL:
https://jsonplaceholder.typicode.com
- Получить пользователя по ID:
GET /users?id=1
- Получить нескольких пользователей по ID:
GET /users?id=1&id=2
- Для изоляции стилей используется
module.scss
. - Реализованы все условия ТЗ.
- Добавьте GIF или скриншот для наглядности.
-
Клонировать репозиторий:
git clone https://github.com/your-repo-url.git cd your-repo-directory
-
Установить зависимости:
npm install
-
Запустить сервер разработки:
npm run dev
-
Собрать проект:
npm run build
-
Проверить код:
npm run lint
-
Отформатировать код:
npm run format