Приведи пример структуры проекта когда внедряем новый функционал

Ответ

src/
  features/
    newFeature/
      components/
        NewComponent.tsx
        NewComponent.styles.ts
      hooks/
        useNewFeature.ts
      types/
        newFeatureTypes.ts
      utils/
        newFeatureUtils.ts
      index.ts
  shared/
    components/
      Button.tsx
    hooks/
      useCommonHook.ts
    types/
      commonTypes.ts
  app/
    store/
      newFeatureSlice.ts
    routes.ts
    App.tsx

Основные принципы:

  1. Функционал группируется в папку features
  2. Каждая фича содержит все необходимые части (компоненты, хуки, типы)
  3. Общие элементы выносятся в shared
  4. Глобальные настройки в app
  5. Экспорт через index.ts для чистого импорта

Пример импорта:

import { NewComponent } from 'features/newFeature'