Skip to content

Latest commit

 

History

History
67 lines (50 loc) · 3.82 KB

README.md

File metadata and controls

67 lines (50 loc) · 3.82 KB

UI для управления списками автоматической рассылки писем

Disclaimer #1: 

Тестовые данные статистики за 19-20ые года, поэтому для отображения графиков надо отмотать на соответствующий период  

Disclaimer #2: 

Иногда heroku подлагивает и не отдает фронт, в этом случае надо подождать и перезагрузить страницу

Production build:

Доступен по ссылке на хостинге herokuapp

Для роли студента:
Логин: student
Пароль: 123
Для роли обычного юзера:
Логин: user
Пароль: 123   

Local build:

  • Процесс ручной сборки на Linux / macOS:

    1. В корне проекта запустить ./gradlew clean :backend:bootRun -Denv=development
    2. Перейти на http://localhost:8080/

Параметры логина аналогичны продовым, см выше.

Тех-Стек:

  • Frontend:

    1. React основная библиотека -- v17.0.2
    2. Yarn для управления зависимостями -- v1.22.10
    3. TypeScript для строгой типизации -- v4.2.3
    4. StyledComponents для динамичных стилей -- v5.2.3
    5. React.Context для хранения глобального стейта -- v17.0.2
    6. PrimeReact для готовых компонентов -- v6.2.1
    7. Axios для запросов -- v0.21.1
    8. i18next для локализации -- v20.1.0
    9. Recharts для рендера графиков -- v2.0.9
    10. React-hook-form для валидации форм -- v6.15.5
  • Backend:

    1. Java язык разработки -- v11.0.3
    2. Spring Boot основной фреймворк -- v2.4.0
    3. Univocity-parsers для парсинга CSV -- v2.1.1
  • Devops:

    1. Gradle (wrapper) скрипты для сборки фронта и бека (локально фронт помещается в ресурсы спринга, а в продовом режиме упаковывается в джарник) -- v6.4.1
    2. Heroku в качестве сервера

Реализованные features:

  • Frontend:

    1. Создано разделение по ролям для задела на различный фунционал, например, для студентов, обычных юзеров и администраторов
    2. Добавлена локализация на двух языках -- русском и английском
    3. Загрузка персонального файла статистики в личном кабинете
    4. Панель для слабовидящих в соответствии со стандартами (WCAG) 2.0 и ГОСТ Р 52872-2019
    5. Темная и светалая темы веб приложения
    6. Отображение данных статистики в виде таблицы со средними показателями и графиков по каждому из продуктов (WebStorm, Idea Intellij, GoLand)
    7. Фильтрация данных по различным промежуткам (day, week, month, quarter, year)
  • Backend:

    1. Аутентификация и авторизация пользователя
    2. Обработка персональных файлов статистики пользователя
    3. Фильтрация предоставленного файла