Ответ
Слой Shared в FSD (Feature-Sliced Design) содержит переиспользуемые компоненты, утилиты, хуки и типы, которые не привязаны к конкретной фиче. Это глобальные элементы, используемые во всем приложении.
Примеры содержимого:
- UI-кит (кнопки, инпуты, модалки)
- Хуки (useDebounce, useLocalStorage)
- Утилиты (formatDate, apiClient)
- Константы (роуты, настройки темы)
- Типы/интерфейсы (User, ApiResponse)
// Пример структуры
shared/
ui/
Button/
Button.tsx
Button.module.css
lib/
hooks/
useDebounce.ts
utils/
formatDate.ts
types/
user.tsВажно: Shared не должен содержать бизнес-логику или специфичные для фич элементы.