Skip to content

Latest commit

 

History

History
55 lines (41 loc) · 5.28 KB

File metadata and controls

55 lines (41 loc) · 5.28 KB

Список задач по улучшению сайта

🐛 Баги

1. Проблема с навигацией и загрузкой контента SPA

  • Реализовать надежный механизм клиентской маршрутизации, который корректно обрабатывает прямые переходы по URL.
  • Оптимизировать ленивую загрузку компонентов или механизм рендеринга для SPA, чтобы избежать отображения устаревшего контента.

2. Ошибка в логике фильтров на странице "Аниме"

  • Исправить логику обработки событий для чекбоксов жанров на странице каталога аниме, чтобы они фильтровали список, а не перенаправляли на страницу деталей.
  • Убедиться, что состояние фильтров корректно сохраняется и применяется при взаимодействии с элементами.

3. Ошибка смены пароля на странице "Профиль"

  • Диагностировать причину ошибки Error changing password: JSHandle@error Error changing password: {} в ProfilePage.tsx:101:20.
  • Исправить логику смены пароля на клиенте и/или сервере для корректной обработки запросов.
  • Внедрить механизм обратной связи для пользователя (уведомление об успехе/ошибке) после попытки смены пароля.

🚀 Улучшения

1. Улучшение обратной связи для смены пароля

  • Реализовать всплывающие уведомления (тосты) или сообщения на странице, информирующие пользователя о результате операции (например, "Пароль успешно изменен" или "Ошибка: текущий пароль неверен").

2. Добавление атрибутов autocomplete для полей пароля

  • Добавить атрибут autocomplete="current-password" к полю текущего пароля.
  • Добавить атрибут autocomplete="new-password" к полям нового пароля и подтверждения нового пароля.

3. Обработка ввода в поле поиска на главной странице

  • Рассмотреть возможность реализации "живого" поиска с отображением результатов по мере ввода.
  • Добавить явную кнопку "Поиск" рядом с полем на главной странице, чтобы сделать функциональность поиска более очевидной.

4. Улучшение обработки фиктивных URL аватаров

  • Реализовать клиентскую валидацию URL аватара перед отправкой на сервер.
  • Внедрить отображение дефолтного аватара или индикатора ошибки в случае недействительного URL, чтобы избежать ошибок в консоли.

5. Локализация текстовых элементов

  • Проверить и убедиться, что все текстовые ключи, такие как "profile.confirm_password" и "profile.favorites", корректно локализованы и отображают переведенный текст.

6. Улучшение производительности (Core Web Vitals)

  • Провести детальный аудит производительности с использованием chrome-devtools performance trace.
  • Выявить и устранить узкие места, влияющие на LCP (Largest Contentful Paint), FID (First Input Delay) и INP (Interaction to Next Paint).
  • Оптимизировать загрузку ресурсов, рендеринг и интерактивность для улучшения общих показателей производительности.

Выполненные оптимизации:

  • Добавлен preload для LCP изображения с fetchpriority="high"
  • Распараллелены API запросы к Jikan (Promise.allSettled)
  • Добавлены preconnect для критичных доменов (CDN, API)
  • Реализовано кеширование API запросов (LRU cache с TTL 5 минут)
  • Оптимизированы Google Fonts с font-display: swap

Результаты:

  • LCP улучшен с 805ms до 707ms (-12%)
  • Load delay уменьшен с 713ms до 7ms (-99%)
  • TTFB улучшен с 15ms до 6ms (-60%)
  • CLS остался на уровне 0.00 (идеально)