Техническое задание: Интеграция бэкенда и рефакторинг фронтенда
Цель проекта
Интеграция готового REST API бэкенда (документированного через Swagger) с существующим клиентским приложением на React с TypeScript. Второй ключевой задачей является проведение рефакторинга кода фронтенда для повышения его качества, читаемости и соответствия best practices.
Текущее состояние
- Фронтенд почти готов, собран на React с TypeScript.
- Сборка настроена с использованием Vite или Create React App (CRA).
- Значительная часть кода была сгенерирована или собрана с помощью инструментов ИИ и требует доработки.
Основные задачи
1. Интеграция с бэкендом
- Подключение к API бэкенда по предоставленной Swagger-спецификации.
- Настройка HTTP-клиента (например, Axios, Fetch API) для работы с эндпоинтами.
- Типизация всех запросов и ответов API на основе Swagger-схем с использованием TypeScript.
- Организация сервис-слоя для инкапсуляции логики взаимодействия с API.
2. Рефакторинг кода фронтенда
- Анализ и улучшение структуры проекта (папки, модули).
- Рефакторинг компонентов: разделение ответственности, улучшение переиспользуемости.
- Оптимизация и чистка TypeScript-типов и интерфейсов.
- Устранение потенциальных антипаттернов, внесенных кодом, сгенерированным ИИ.
- Приведение кода в соответствие с принятыми соглашениями по стилю (code style).
- Улучшение обработки состояний загрузки, ошибок и успешных сценариев при работе с API.
3. Требования к результату
- Полностью рабочее взаимодействие фронтенда с бэкендом через Swagger API.
- Чистый, хорошо структурированный и документированный код на TypeScript.
- Код должен быть легко поддерживаемым и расширяемым.