Документация компонентов и функций здесь
npm run start:dev
- запустить фронтенд и json-server
npm run build:dev
- сборка в dev-режиме без минификации и с source-maps
npm run build:prod
- сборка в prod-режиме с минификацией
serve -s build
- запустить собранный проект
npm run lint:ts
- прогнать eslint
npm run lint:ts:fix
- поправить ошибки линтера
npm run test:unit
- запустить unit-тесты
npm run test:e2e
- запустить локально e2e-тесты
npm run test:e2e:report
- посмотреть последний отчет
Для unit тестов использовал jest. Написал тесты на селекторы, экшены редьюсеров и async thunks.
Для e2e тестов решил использовать Playwright, так как удобен в использовании и набирает сейчас популярность, стало интересно его попробовать. Описал три кейса: создание сотрудника, редактирование информции о сотруднике и поиск.
Написал небольшой workflow для прогона unit и e2e тестов
Фронтенд задеплоил на Netlify, бекэнд с json-сервером на Render.com.
- Сделать хук useObserverIntersection для создания ленивой подгрузки сотрудников на главной странице
- Сохранение фильтров в localStorage
- Разбить код на ленивые компоненты и динамически создаваемые/удаляемые редьюсеры
- Добавить RTL-тесты
- Валидация полей формы с отображением ошибок по каждому полю с помощью react-hook-form или собственной валидации.