Skip to main content

O que são aplicativos?

Os aplicativos permitem que você estenda o Twenty com objetos e campos personalizados, funções lógicas, componentes de front-end, habilidades de IA e mais — tudo gerenciado como código. Em vez de configurar tudo pela UI, você define seu modelo de dados e a lógica em TypeScript e implanta em um ou mais workspaces.

Pré-requisitos

Antes de começar, verifique se o seguinte está instalado na sua máquina:
  • Node.js 24+Baixe aqui
  • Yarn 4 — Vem com o Node.js via Corepack. Ative-o executando corepack enable
  • DockerBaixe aqui. Necessário para executar uma instância local do Twenty. Não é necessário se você já tiver um servidor Twenty em execução.

Crie seu primeiro aplicativo

Gere o scaffold do seu aplicativo

Abra um terminal e execute:
Será solicitado que você informe um nome e uma descrição para o seu aplicativo. Pressione Enter para aceitar os valores padrão. Isso cria uma nova pasta chamada my-twenty-app com tudo de que você precisa.

Configure uma instância local do Twenty

O gerador de scaffold perguntará:
Você gostaria de configurar uma instância local do Twenty?
  • Digite yes (recomendado) — Isso baixa a imagem Docker twenty-app-dev e inicia um servidor Twenty local na porta 2020. Certifique-se de que o Docker esteja em execução antes de continuar.
  • Digite no — Escolha esta opção se você já tiver um servidor Twenty em execução localmente.
Deve iniciar instância local?

Faça login no seu espaço de trabalho

Em seguida, uma janela do navegador será aberta com a página de login do Twenty. Faça login com a conta de demonstração pré-configurada:
  • E-mail: tim@apple.dev
  • Senha: tim@apple.dev
Tela de login do Twenty

Autorize o aplicativo

Após fazer login, você verá uma tela de autorização. Isso permite que seu aplicativo interaja com seu espaço de trabalho. Clique em Authorize para continuar.
Tela de autorização da CLI do Twenty
Depois de autorizado, seu terminal confirmará que tudo está configurado.
Scaffold do aplicativo criado com sucesso

Comece a desenvolver

Entre na nova pasta do seu aplicativo e inicie o servidor de desenvolvimento:
Isso observa seus arquivos-fonte, recompila a cada alteração e sincroniza seu aplicativo com o servidor Twenty local automaticamente. Você deverá ver um painel de status em tempo real no seu terminal. Para uma saída mais detalhada (logs de build, solicitações de sincronização, rastros de erro), use a flag --verbose:
O modo de desenvolvimento só está disponível em instâncias do Twenty em modo de desenvolvimento (NODE_ENV=development). Instâncias de produção rejeitam solicitações de sincronização de desenvolvimento. Use yarn twenty deploy para fazer o deploy em servidores de produção — veja Publicando aplicativos para detalhes.
Saída do terminal no modo de desenvolvimento

Sincronização única com yarn twenty dev --once

Se você não quiser um monitor em execução em segundo plano (por exemplo, em um pipeline de CI, um hook do git ou um fluxo de trabalho com script), passe a flag --once. Ele executa o mesmo pipeline que yarn twenty dev — gerar o manifesto, empacotar arquivos, fazer upload, sincronizar, regenerar o cliente de API tipado — mas encerra assim que a sincronização for concluída:
Ambos os modos exigem um servidor Twenty em execução no modo de desenvolvimento e um remoto autenticado — aplicam-se os mesmos pré-requisitos.

Veja seu aplicativo no Twenty

Abra http://localhost:2020/settings/applications#developer no seu navegador. Navegue até Settings > Apps e selecione a aba Developer. Você deverá ver seu aplicativo listado em Your Apps:
Lista Your Apps exibindo My twenty app
Clique em My twenty app para abrir o seu registro do aplicativo. Um registro é um registro em nível de servidor que descreve seu aplicativo — seu nome, identificador exclusivo, credenciais OAuth e origem (local, npm ou tarball). Ele reside no servidor, não dentro de nenhum espaço de trabalho específico. Quando você instala um aplicativo em um espaço de trabalho, o Twenty cria uma aplicação com escopo do espaço de trabalho que aponta para esse registro. Um registro pode ser instalado em vários espaços de trabalho no mesmo servidor.
Detalhes do registro do aplicativo
Clique em View installed app para ver o aplicativo instalado. A aba About mostra a versão atual e as opções de gerenciamento:
Aplicativo instalado — aba About
Altere para a aba Content para ver tudo o que seu aplicativo oferece — objetos, campos, funções de lógica e agentes:
Aplicativo instalado — aba Content
Tudo pronto! Edite qualquer arquivo em src/ e as alterações serão detectadas automaticamente.

O que você pode criar

Os aplicativos são compostos por entidades — cada uma definida como um arquivo TypeScript com um único export default: Acesse Criando aplicativos para um guia detalhado sobre cada tipo de entidade.

Estrutura do projeto

A ferramenta de scaffolding gera a seguinte estrutura de arquivos:

Começando a partir de um exemplo

Para começar a partir de um exemplo mais completo com objetos, campos, funções de lógica, componentes de front-end e mais, use a opção --example:
Os exemplos são obtidos do diretório twenty-apps/examples no GitHub. Você também pode criar o scaffolding de entidades individuais em um projeto existente com yarn twenty add (veja Criando aplicativos).

Arquivos principais

Servidor de desenvolvimento local

A ferramenta de scaffolding já iniciou um servidor local do Twenty para você. Para gerenciá-lo depois, use yarn twenty server: Os dados são persistidos entre reinicializações em dois volumes do Docker (twenty-app-dev-data para PostgreSQL, twenty-app-dev-storage para arquivos). Use reset para apagar tudo e começar do zero.

Executando uma instância de teste

Passe --test para qualquer comando de server para gerenciar uma segunda instância totalmente isolada — útil para executar testes de integração ou experimentar sem tocar nos seus dados principais de desenvolvimento. A instância de teste é executada em seu próprio contêiner Docker (twenty-app-dev-test) com volumes dedicados (twenty-app-dev-test-data, twenty-app-dev-test-storage) e configuração própria, para que possa ser executada em paralelo com sua instância principal sem conflitos. Combine --test com --port para substituir a porta padrão 2021.
O servidor requer que o Docker esteja em execução. Se você vir um erro “Docker not running”, certifique-se de que o Docker Desktop (ou o daemon do Docker) esteja iniciado.

Configuração manual (sem o gerador)

Se preferir configurar tudo por conta própria em vez de usar create-twenty-app, você pode fazer isso em duas etapas. 1. Adicione twenty-sdk e twenty-client-sdk como dependências:
2. Adicione um script twenty ao seu package.json:
Agora você pode executar yarn twenty dev, yarn twenty help e todos os outros comandos.
Não instale o twenty-sdk globalmente. Use-o sempre como uma dependência local do projeto para que cada projeto possa fixar sua própria versão.

Resolução de Problemas

Se você tiver problemas:
  • Certifique-se de que o Docker está em execução antes de iniciar o scaffolder com uma instância local.
  • Certifique-se de que está usando Node.js 24+ (node -v para verificar).
  • Certifique-se de que o Corepack está ativado (corepack enable) para que o Yarn 4 esteja disponível.
  • Tente excluir node_modules e executar yarn install novamente se as dependências parecerem corrompidas.
Ainda com dificuldades? Peça ajuda no Discord da Twenty.