Проект представляет собой клиентскую часть для авторизации пользователей. Предполагается, что на серверной стороне
авторизация работает с использованием JWT-токенов. Клиент отправляет на сервер запрос с полем Authorization
в
заголовке.
- React
- TypeScript
- React Hook Form
- Zod
- React Query
- shadcn/ui
- Tailwind CSS
- React Helmet
/src
: корневая директория исходного кода./components
: переиспользуемые компоненты интерфейса./hooks
: пользовательские хуки React./pages
: компоненты страниц приложения.
Для управления формами используется библиотека React Hook Form в сочетании с Zod для валидации схем.
Для работы с серверными данными используется React Query, который обеспечивает кэширование, синхронизацию и обновление данных, полученных с сервера.
Стилизация осуществляется с помощью Tailwind CSS и компонентов из shadcn/ui.
В проекте реализовано переключение между светлой и тёмной темами. Для этого используется переключатель, который изменяет
класс dark
на элементе html
, а стили, основанные на этом классе, определены в конфигурации Tailwind CSS.
- подтверждение пароля при регистрации
- валидация пароля на стороне клиента
- динамические заголовоки страниц