Приложение разработано с помощью библиотеки React. Для управления состоянием приложения был выбран Redux и библиотека middlewares - Redux-Thunk. В качестве библиотеки для UI была выбрана Material UI.
Приложение состоит из двух директорий: public и src и файла пакетного менеджера - package.json.
В папке public хранится index.html, favicon.ico, manifest.json и логотипы.
В папке scr находится главная точка входа в приложение - index.js в котором находятся все главные подключения системы: подключение store, инициализация UI библиотеки и так же App.js.
Так же папка src имеет 2 директории: components и store.
В директории components находятся компоненты системы: FormFilters, ListPeople, NoPeople.
Отвечает за блок контента, где рассположены поля для фильтрации данных. Поля делятся на текстовые (фильтр по имени, фамилию и возрасту) и чекбоксы (фильтр за полом человека).
Компонент отвечает за отображение списка людей, в которые входят такие параметры, как Имя, Фамилия, Возраст и Пол.
Компонент отвечает за отображение для юзера того, что людей на найдено.
В директории store находится все состояние приложения. В этой директории есть свои поддиректории: actions с экшенами системы и reducer с редьюсерами. Так же есть файл index.js с инициализацией стора приложения и комбайн редьюсером и файл types со всеми типами.
- Требуется локально установленный nodejs последней версии. Скачать можно по ссылке. (https://nodejs.org/uk/ "Ссылка на загрузку Node.js");
- Установить git и зарегистрироватся в github.
- Клонировать проект: в удобном месте прописать команду git clone https://github.com/dimakruhlyi/venbest-task.git.
- После клонирования зайти в папку с приложением: cd venbest-task.
- В терминале ввести npm install либо yarn install.
- После завершения установки ввести в терминале npm run start либо yarn start.
Задеплоиная версия на Google Firebase (https://venbesttask.web.app/)