npx create-twenty-app se parece com isto:
Arquivos principais
| Arquivo / Pasta | Finalidade |
|---|---|
src/application-config.ts | Obrigatório. O principal arquivo de configuração do seu aplicativo. |
src/default-role.ts | Papel padrão que controla o que suas funções de lógica podem acessar. |
src/constants/universal-identifiers.ts | UUIDs gerados automaticamente e metadados (nome de exibição, descrição). |
src/__tests__/ | Testes de integração (configuração + teste de exemplo). |
public/ | Recursos estáticos (imagens, fontes) servidos com seu aplicativo. |
A organização de arquivos fica a seu critério. As pastas acima são convenções — o SDK detecta entidades por meio de análise de AST em chamadas a
export default defineEntity(...), independentemente de onde o arquivo esteja.Dependências
Ambos os pacotes Twenty SDK pertencem adevDependencies, não a dependencies:
twenty-sdkinclui a CLItwentye as ferramentas de build/scaffolding. Ele é executado apenas durante o desenvolvimento e o build e nunca é importado pelo runtime do aplicativo publicado.twenty-client-sdké importado pelo código do seu aplicativo (CoreApiClient,MetadataApiClient,RestApiClient), mas a Twenty o fornece em tempo de execução — as funções de lógica o obtêm de uma camada SDK gerada, e os componentes de front o resolvem a partir de módulos servidos pelo servidor. A cópia instalada é usada apenas para verificação de tipos e para o build no momento do deploy, então ela nunca precisa ser incluída no bundle implantado.
dependencies o inclui no bundle de runtime do aplicativo instalado, onde ele é peso morto. twenty build emite um aviso quando qualquer um deles ainda está listado em dependencies.
Adicione as dependências de runtime do próprio aplicativo (bibliotecas que as suas funções de lógica realmente importam em tempo de execução) em dependencies, como de costume.