feature-arch · pymodel — скилл для Claude Code: структура React по фичам
Скилл задаёт правила папок и границ модулей в React-проекте: 42 правила по 8 категориям, от структуры каталогов до имён файлов.
npx skills add PyModel/react-frontend-skills --skill feature-arch -a claude-codeЧто делает feature-arch
Скилл описывает, как раскладывать React-приложение по фичам, а не по техническим типам файлов. Внутри 42 правила с приоритетами: сначала структура каталогов и импорты, потом границы модулей, загрузка данных, компоненты, состояние, тесты и соглашения об именах. Каждое правило лежит отдельным файлом в references/<rule-id>.md — там объяснение, зачем оно нужно, и примеры неправильного и правильного кода.
Агент читает нужный файл, когда вы создаёте фичу, разбираете структуру проекта или проверяете код на нарушения архитектуры. Правила про слои и границы совпадают с Feature-Sliced Design, так что проект не придётся переучивать под другой стандарт. Для загрузки данных скилл отправляет к соседнему tanstack-query, для паттернов компонентов — к react.
Полезно, если фич становится много и команды начинают лезть в чужие папки. Скилл не расставит границы сам: он даёт правила, по которым вы их проведёте, и дальше следите за импортами вручную или линтером.
Какие задачи решает
- разложить React-проект по фичам вместо папок components и utils
- запретить импорты из одной фичи в другую
- вынести общий код в отдельный shared-слой
- собрать загрузку данных внутри фичи, а не в общем сторе
- проверить код на нарушения границ модулей
Примеры запросов агенту
- Помоги разложить новую фичу checkout по структуре из feature-arch
- Проверь импорты в src/features и скажи, где нарушены границы модулей
- Как по feature-arch организовать загрузку данных для фичи профиля?
Как установить feature-arch
1Через Skills CLI (Vercel)
npx skills add PyModel/react-frontend-skills --skill feature-arch -a claude-code2Вручную: положить файлы
~/.claude/skills/feature-arch/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/feature-arch/
1Через Skills CLI (Vercel)
npx skills add PyModel/react-frontend-skills --skill feature-arch -a codex2Вручную: положить файлы
.agents/skills/feature-arch/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add PyModel/react-frontend-skills --skill feature-arch -a cursor2Вручную: положить файлы
.cursor/skills/feature-arch/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install PyModel/react-frontend-skills feature-arch2Вручную: положить файлы
.github/skills/feature-arch/SKILL.md1Через Skills CLI (Vercel)
npx skills add PyModel/react-frontend-skills --skill feature-arch -a gemini-cli2Командой платформы
gemini skills install https://github.com/PyModel/react-frontend-skills --path skills/feature-archВручную: положить файлы
.devin/skills/feature-arch/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add PyModel/react-frontend-skills --skill feature-arch -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о feature-arch
Как установить feature-arch в Claude?
Выполните npx skills add PyModel/react-frontend-skills --skill feature-arch -a claude-code. Скилл появится в ~/.claude/skills/feature-arch/SKILL.md.
Что делает feature-arch?
Даёт агенту 42 правила по организации React-приложения: структура каталогов, импорты, границы модулей, загрузка данных, компоненты, состояние, тесты и имена. Агент читает нужное правило из references/<rule-id>.md, когда вы работаете с фичей или проверяете архитектуру.
С чем сочетается feature-arch?
Правила про слои и границы совпадают с Feature-Sliced Design. Для загрузки данных скилл ссылается на tanstack-query, для паттернов компонентов — на react.
Исходный текст
SKILL.md · MIT
--- name: feature-arch description: Feature-based React folder structure and module boundaries. --- # Feature-Based Architecture Best Practices Comprehensive architecture guide for organizing React applications by features, enabling scalable development with independent teams. Contains 42 rules across 8 categories, prioritized by impact from critical (directory structure, imports) to incremental (naming conventions). ## When to Apply Reference these guidelines when: - Creating new features or modules - Organizing project directory structure - Setting up import rules and boundaries - Implementing data fetching patterns - Composing components from multiple features - Reviewing code for architecture violations ## Rule Categories by Priority | Priority | Category | Impact | Prefix | |----------|----------|--------|--------| | 1 | Directory Structure | CRITICAL | `struct-` | | 2 | Import & Dependencies | CRITICAL | `import-` | | 3 | Module Boundaries | HIGH | `bound-` | | 4 | Data Fetching | HIGH | `fquery-` | | 5 | Component Organization | MEDIUM-HIGH | `fcomp-` | | 6 | State Management | MEDIUM | `fstate-` | | 7 | Testing Strategy | MEDIUM | `test-` | | 8 | Naming Conventions | LOW | `name-` | ## Quick Reference ### 1. Directory Structure (CRITICAL) - `struct-feature-folders` - Organize by feature, not technical type - `struct-feature-self-contained` - Make features self-contained - `struct-shared-layer` - Use shared layer for truly generic code only - `struct-flat-hierarchy` - Keep directory hierarchy flat - `struct-optional-segments` - Include only necessary segments - `struct-app-layer` - Separate app layer from features ### 2. Import & Dependencies (CRITICAL) - `import-unidirectional-flow` - Enforce unidirectional import flow - `import-no-cross-feature` - Prohibit cross-feature imports - `import-public-api` - Export through public API only - `import-avoid-barrel-files` - Avoid deep barrel file re-exports - `import-path-aliases` - Use consistent path aliases - `import-type-only` - Use type-only imports for types ### 3. Module Boundaries (HIGH) - `bound-feature-isolation` - Enforce feature isolation - `bound-interface-contracts` - Define explicit interface contracts - `bound-feature-scoped-routing` - Scope routing to feature concerns - `bound-minimize-shared-state` - Minimize shared state between features - `bound-event-based-communication` - Use events for cross-feature communication - `bound-feature-size` - Keep features appropriately sized ### 4. Data Fetching (HIGH) - `fquery-single-responsibility` - Keep query functions single-purpose - `fquery-colocate-with-feature` - Colocate data fetching with features - `fquery-parallel-fetching` - Fetch independent data in parallel - `fquery-avoid-n-plus-one` - Avoid N+1 query patterns - `fquery-feature-scoped-keys` - Use feature-scoped query keys - `fquery-server-component-fetching` - Fetch at server component level ### 5. Component Organization (MEDIUM-HIGH) - `fcomp-single-responsibility` - Apply single responsibility to components - `fcomp-composition-over-props` - Prefer composition over prop drilling - `fcomp-container-presentational` - Separate container and presentational concerns - `fcomp-props-as-data-boundary` - Use props as feature boundaries - `fcomp-colocate-styles` - Colocate styles with components - `fcomp-error-boundaries` - Use feature-level error boundaries ### 6. State Management (MEDIUM) - `fstate-feature-scoped-stores` - Scope state stores to features - `fstate-server-state-separation` - Separate server state from client state - `fstate-lift-minimally` - Lift state only as high as necessary - `fstate-context-sparingly` - Use context sparingly for feature state - `fstate-reset-on-unmount` - Reset feature state on unmount ### 7. Testing Strategy (MEDIUM) - `test-colocate-with-feature` - Colocate tests with features - `test-feature-isolation` - Test features in isolation - `test-shared-utilities` - Create feature-specific test utilities - `test-integration-at-app-layer` - Write integration tests at app layer ### 8. Naming Conventions (LOW) - `name-feature-naming` - Use domain-driven feature names - `name-file-conventions` - Use consistent file naming conventions - `name-descriptive-exports` - Use descriptive export names ## How to Use Read `references/<rule-id>.md` for each rule above that matches the task: why it matters, then incorrect vs. correct code. The layering and boundary rules align with Feature-Sliced Design (FSD), the most widely adopted React architecture standard; see [feature-sliced.design](https://feature-sliced.design/) for the full methodology. ## Related Skills - For data fetching, see `tanstack-query` skill - For React component patterns, see `react` skill
© PyModel · MIT · PyModel/react-frontend-skills
Похожие скиллы
Всё по теме «Фронтенд и UI» →Сначала — feature-arch от других авторов.