frontend-architecture
Faz seu agente organizar o código do frontend. Separa partes do app em módulos para facilitar a manutenção e o desenvolvimento.
O que ela faz
Esta habilidade descreve uma forma de organizar o código de aplicativos feitos com React ou React Native. Ela ajuda a manter tudo arrumado em módulos, separando o que é do servidor e o que é da tela, e definindo regras claras sobre como as partes do código podem se comunicar.
Quando usar
- ✓Ao iniciar um novo projeto React/React Native.
- ✓Quando o código de um projeto está ficando confuso e difícil de entender.
- ✓Para garantir que diferentes desenvolvedores sigam as mesmas regras de organização.
Exemplo do que pedir para a IA
“Como posso organizar meu código React Native para que seja fácil de entender e manter?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ela divide o aplicativo em 'módulos' (partes funcionais), onde cada módulo tem suas próprias páginas, componentes e dados. As regras definem como esses módulos podem interagir entre si, usando apenas pontos de entrada públicos.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill frontend-architectureOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/frontend-architecture/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Arquitetura Frontend (portátil, baseada em módulos)
Quando Usar
Use esta habilidade quando precisar de um estilo de arquitetura portátil e independente de framework para qualquer frontend React ou React Native. Organiza aplicativos em módulos de funcionalidades com diretórios de páginas/telas, uma divisão estrita entre estado do servidor e estado da UI, importações entre módulos apenas por "barrels" (arquivos de índice), estilos co-localizados e regras claras de promoção de componentes....
Habilidade portátil — legível por Claude Code, OpenCode, Codex, Cursor, Windsurf e outros. Esta habilidade descreve uma estrutura e um conjunto de regras, não uma biblioteca de componentes, uma biblioteca de estado ou um estilo visual. É deliberadamente global: o mesmo modelo de módulo/página/estado se aplica a Next.js (App Router), React + Vite (SPA), Remix e Expo / React Native, e funciona com qualquer pilha de gerenciamento de estado e estilização.
O objetivo: um codebase onde qualquer contribuidor possa responder instantaneamente a três perguntas — "onde este código está localizado?", "o que é permitido importar o quê?" e "isso é estado do servidor ou estado da UI?" — sem perguntar a ninguém. A estrutura torna as respostas óbvias.
0. As cinco ideias centrais
- Módulos de funcionalidades dominam seu mundo. Cada funcionalidade é uma
modules/{feature}/pasta autônoma com suas próprias páginas, componentes, hooks, estado, tipos e um único "barrel" público. - Páginas/telas são diretórios, não arquivos. Uma rota é uma pasta que co-localiza seu componente, seus estilos e os componentes/hooks usados apenas por ela.
- O estado é dividido por origem. Dados do servidor vivem em uma camada de consulta/cache. Estado da UI/cliente vive em um "store". Eles nunca se sobrepõem — independentemente das bibliotecas que você escolher.
- Importações cruzam limites apenas através de "barrels". Acessar o interior de outro módulo é proibido; você importa de
@/modules/{feature}e nada mais profundo. - O código é promovido, não pré-colocado. Ele começa o mais local possível e se move para fora apenas quando um segundo consumidor aparece.
Tudo abaixo é a aplicação mecânica dessas cinco ideias. Nada disso está atrelado a uma biblioteca específica — escolha sua pilha nas Seções 4 e 6.
1. Layout de diretórios
A forma é idêntica entre os frameworks; apenas a camada de roteamento acima difere (veja a Seção 7).
src/
├── app/ or routes/ or navigation/ ← framework routing layer (thin — see §7)
├── modules/ ← feature modules (the heart of the app)
│ └── {feature}/
│ ├── index.ts ← PUBLIC BARREL — the only cross-module entry point
│ ├── README.md ← what this module owns, its routes, its data deps
│ ├── components/ ← components reused by 2+ pages IN THIS MODULE
│ ├── pages/ ← page/screen directories (one per route)
│ │ └── {page}/
│ │ ├── {page}.tsx ← the page/screen component
│ │ ├── {page}.styles.ts ← ALL styling for this page
│ │ ├── index.ts ← re-exports the page component
│ │ ├── components/ ← components used ONLY by this page
│ │ ├── hooks/ ← hooks used ONLY by this page
│ │ ├── constants/
│ │ └── README.md ← route, params, permissions, data deps
│ ├── hooks/ ← data hooks (query/mutation) + module hooks
│ ├── stores/ ← UI/client state store(s) — never server data
│ ├── services/ ← data-access (API calls) for this feature
│ ├── utils/ ← pure module utilities (co-located *.test.ts)
│ ├── constants/
│ └── types/ ← module request/response + view-model types
└── shared/ ← cross-module building blocks
├── components/ ← components used by 2+ MODULES
├── hooks/ ← cross-cutting hooks
├── api-client/ ← one typed client; the only place that talks to the network
├── store/ ← root store wiring (if your state lib needs one — see §4)
├── utils/ ← formatters, cn()/clsx, helpers
├── constants/
└── types/
Cada pasta que pode estar vazia no momento da criação mantém um .gitkeep para que a estrutura seja visível desde o primeiro dia.
2. Módulos de funcionalidades
Um módulo é uma fatia vertical do produto (por exemplo, auth, billing, dashboard, settings). Ele contém tudo o que a funcionalidade precisa e expõe uma superfície deliberadamente pequena.
…
Perguntas frequentes
Preciso usar bibliotecas específicas de React?
Não, esta organização funciona com qualquer biblioteca de estado ou estilo que você escolher para seu projeto React ou React Native.
O que são 'módulos'?
Módulos são como caixas que agrupam todas as partes relacionadas a uma funcionalidade específica do aplicativo, como 'autenticação' ou 'pagamentos'.
Por que as páginas são pastas e não arquivos?
Tornar as páginas pastas desde o início permite que você adicione facilmente mais arquivos (como componentes específicos da página ou estilos) sem precisar mudar a estrutura depois.
Detalhes
Descrição original do autor
A portable, framework-agnostic architecture style for any React or React Native frontend. Organizes apps into feature modules with page/screen directories, a strict server-state vs UI-state split, barrel-only cross-module imports, co-located styles, and clear component-promotion rules.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #3048
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
angular-developer
Ajuda seu agente a criar código Angular e a dar conselhos sobre a estrutura do projeto. É útil para iniciar novos projetos, criar partes do código ou melhorar a performance e acessibilidade.
affaan-m/ECC
frontend-a11y
Ajuda seu agente a tornar interfaces web acessíveis para todos. Ele garante que sites e apps funcionem bem com leitores de tela e navegação por teclado.
affaan-m/ECC
frontend-patterns
Faz seu agente aplicar padrões modernos no desenvolvimento frontend. Ele otimiza performance, gerencia estado e segue boas práticas em React e Next.js.
affaan-m/ECC