Organizar codebase Next: sair do dumpster
Pasta gigante de componentes, data fetch espalhado e server actions no mesmo bolo. Como reorganizar sem parar o produto.
Resposta direta
Um fonte de componentes gigante onde tudo é derrubado. A fecha de dados se esvai em componentes do server porque, bem, por que não? E um fonte de ações massiva retenida com todas as ações do seu server.
Por que este material importa
Este texto reorganiza a transcrição ligada a `organizar-codebase-next-rsc` (tema: organizar codebase next) em leitura operacional — o que muda no produto ou no processo esta semana.
Um fonte de componentes gigante onde tudo é derrubado. A fecha de dados se esvai em componentes do server porque, bem, por que não? E um fonte de ações massiva retenida com todas as ações do seu server.
A abertura do material deixa a restrição explícita: Um fonte de componentes gigante onde tudo é derrubado. A fecha de dados se esvai em componentes do server porque, bem, por que não? E um fonte de ações massiva retenida com todas as ações do seu server.
Sintomas do caos
O ponto de partida não é teoria genérica — é uma restrição concreta: E acredite-me, esses são grandes erros que fazem sua base de código impossível de escalar. Neste vídeo, eu vou mostrar exatamente como eu fixo esses erros mudando para uma arquitetura baseada em funções e como você pode fazer o mesmo. Certo, então, antes de nós olharmos como você deveria estruturar seu projeto da maneira certa, Vamos primeiro olhar como você não deveria fazer isso.
Desdobrando o mecanismo sem teatro: Então, este é um projeto de exemplo que eu criei há alguns anos. E para ser honesto com você, eu não estou orgulhoso disso.
Se você não consegue resumir a restrição em uma frase, ainda não extraiu o problema — só a vibe do vídeo.
Âncora
Information gain = caso + mecanismo. Sem o caso, vira resumo vazio de blog.
Fronteiras de pasta
A mudança útil não é 'usar a ferramenta X'. É alterar o fluxo: Mas, hey, é uma experiência de aprendizagem. Então, vamos primeiro olhar a estrutura de folha em geral. E olhando para ela, ela parece bem.
Traduza para o seu time com evidência do próprio cenário mostrado: E isso é porque esta é a estrutura de folha. setup, you can't really do anything wrong right here.
Checklist curto: 1) Dono da decisão. 2) Métrica de 7 dias. 3) Rollback se piorar. 4) Doc de uma página no repo.
Checklist
Copie o mecanismo, não a persona do criador. Seu ICP e stack ditam o experimento.
Data e server actions
O material também mostra (às vezes sem nomear) onde o time se engana: So let's look at the app folder. And this is already a bit more interesting because inside of here I define my routes but also my business logic.
Falsas vitórias comuns: demo bonita sem dados, integração 'pronta' sem observabilidade, e automação que esconde erro em vez de surfacing.
Para `organizar-codebase-next-rsc`, a pergunta de corte é: o usuário consegue completar a tarefa sem você na call? Se não, ainda é protótipo.
Atenção
Não marque como shipped o que só funciona com o founder logado e o .env da demo.
Refator incremental
Se travar, volte ao trecho-âncora: A fecha de dados se esvai em componentes do server porque, bem, por que não? E um fonte de ações massiva retenida com todas as ações do seu server.
Internalize com links vivos do ecossistema CrazyStack: /blog, /curso-cursor-avancado-configuracoes-pro, /curso-claude-code-9-dicas-profissionais, /programa-crazystack e /checklist-independencia-cursor.
Detalhes do material de origem
Trechos reorganizados do material (leitura operacional): E um fonte de ações massiva retenida com todas as ações do seu server. E acredite-me, esses são grandes erros que fazem sua base de código impossível de escalar. Neste vídeo, eu vou mostrar exatamente como eu fixo esses erros mudando para uma arquitetura baseada em funções e como você pode fazer o mesmo.
Implicações para produto e engenharia: Certo, então, antes de nós olharmos como você deveria estruturar seu projeto da maneira certa, Vamos primeiro olhar como você não deveria fazer isso. Então, este é um projeto de exemplo que eu criei há alguns anos. E para ser honesto com você, eu não estou orgulhoso disso.
O que levar para a próxima sprint: Então, vamos primeiro olhar a estrutura de folha em geral. E olhando para ela, ela parece bem. E isso é porque esta é a estrutura de folha.
Mais evidência do áudio original, sem inventar cena: So in the app folder I have a dashboard folder. In the dashboard folder I have a layout file, a page.tsx. You create a folder with a page.tsx and then this se torna uma rota.
Último bloco de evidência do transcript: Então eu diria que a estrutura da rota é boa, não é ruim, não é ótima, é bem o suficiente para ser honesto com você. Mas vamos olhar algo mais interessante e é assim que eu na verdade defini meus componentes, porque se você tem olhos bons, você verá que eu tenho dois folhas de componentes. O que eu quero dizer com isso?
Quando a transcrição é densa, o ganho editorial está em transformar a restrição em checklist e critério de corte — sem inventar fatos ausentes do áudio.
Perguntas frequentes
Em Codebase Next bagunçado: componentes, data e actions, qual restrição de «Sintomas do caos» o texto força?
Parta do mecanismo descrito: O ponto de partida não é teoria genérica — é uma restrição concreta: E acredite-me, esses são grandes erros que fazem sua base de código impossível de escalar. Neste vídeo, eu vou mostrar exatamente como eu fixo esses erros mudando para uma arquitetura baseada.
Como validar «Fronteiras de pasta» com um teste mínimo esta semana?
Critério do artigo: A mudança útil não é 'usar a ferramenta X'. É alterar o fluxo: Mas, hey, é uma experiência de aprendizagem. Então, vamos primeiro olhar a estrutura de folha em geral. E olhando para ela, ela parece bem. Segundo sinal: Traduza para o seu time com evidência do próprio cenário mostrado: E isso é porque esta é a estrutura de folha. setup, you can't really do anything wrong right here.
O que «Data e server actions» muda no critério de aceite?
Alerta do corpo: O material também mostra (às vezes sem nomear) onde o time se engana: So let's look at the app folder. And this is already a bit more interesting because inside of here I define my routes but also my business logic. Ajuste ao contexto de `organizar-codebase-next-rsc` antes de generalizar.