Backend: JAX-RS
Frontend: React
Управление состоянием: RTK Query
Хранение значений: Postgres (Hibernate в качестве ORM)
Интеграция frontend: Webpack Module Federation
Функциональность приложения расширяется. Помимо проверки попадания точки в область система ведет историю запросов и вводит возможность сохранять “группы результатов попаданий”. Группа результатов попаданий - абстракция, позволяющая пользователю логически объединять результаты проверок. Пользователь может:
- Создать новую группу
- Активировать существующую группу (сделать ее текущей)
- Заполнить текущую группу новыми результатами проверок
- Удалить группу
- При переключении между группами перезапрашиваются точки в таблице результатов и перерисовывается график
Состоит из двух микрофронтендов, построенных на одном фреймворке. Оба микрофронта интегрируются в единое приложение через механизм модульной федерации Webpack.
- Первый микрофронт представляет собой форму ввода координат точки и элемент интерфейса для запуска проверки
- Второй микрофронт отвечает за отображение таблицы результатов, графика и истории запросов пользователя
Используется глобальный стор (RTK Query) для обмена данными между микрофронтами
Состоит из трех микросервисов: Auth, Geometry и History
- Auth выполняет регистрацию и аутентификацию пользователей, выдает JWT-токены для авторизации запросов
- Geometry осуществляет геометрический расчет попадания точки и теперь заведует группами точек и их функционалом. Также выполняет POST запрос к сервису History для регистрации действий пользователя
- History отвечает за сохранение действий пользователя и отправку истории запросов пользователя. Он принимает запросы на сохранение действий от сервиса Geometry.
Каждый микросервис оперирует своей независимой схемой данных в Postgres. Взаимодействие с БД осуществляется через ORM Hibernate



