Saltar al contenido principal

Cómo funcionan las aplicaciones

Una aplicación es un conjunto de entidades declaradas usando funciones defineEntity() del paquete twenty-sdk. La CLI detecta estas declaraciones a través de análisis AST en tiempo de construcción y produce un manifiesto — una descripción completa de lo que su aplicación añade a un espacio de trabajo. Estas funciones validan tu configuración en tiempo de compilación y proporcionan autocompletado en el IDE y seguridad de tipos.
La organización de archivos depende de ti. La detección de entidades está basada en AST — el SDK encuentra export default defineEntity(. .) llama independientemente del lugar donde resida el archivo . La estructura de carpetas anterior es una convención, no un requisito.

Tipos de entidades

Sandboxing

  • Las funciones de lógica se ejecutan en procesos de Node.js aislados en el servidor. Sólo acceden a los datos a través del cliente de API escrito, que actúa como la persona que activó la ejecución o como la aplicación misma. Ver Quién accede a un uso de llamadas.
  • Los componentes de frontend se ejecutan en Web Workers usando Remote DOM — aislados de la página principal pero renderizando elementos DOM nativos (no iframes). Se comunican con Twenty a través de una API de host de paso de mensajes.
  • Los permisos se aplican a nivel de API. Se inyectan dos fichas de tiempo de ejecución, ambas derivadas del rol declarado con defineApplicationRole(); el valor por defecto se limita más a lo que la persona activadora puede hacer cuando alguien está detrás de la ejecución.

Ciclo de vida de la aplicación

  • veinte aplicaciones dev — observa tus archivos de origen y los cambios en live-syncs a un servidor conectado Veenty . Tras una sincronización correcta, regenera el cliente de API tipado cuando el esquema o el paquete del generador instalado han cambiado, o cuando faltan archivos del cliente generado o han cambiado. Para actualizar los tipos después de cambiar el espacio de trabajo en la interfaz de usuario, ejecuta twenty app generate-client.
  • veinte apps build — compila TypeScript, agrupa funciones lógicas y componentes frontales con esbuild, y produce un manifiesto.
  • Hooks de pre/post-instalación y desinstalación — funciones opcionales que se ejecutan durante la instalación o justo antes de la desinstalación. Consulta Hooks de instalación para más detalles.

Próximos Pasos

apps-config
Configura
identidad de la aplicación, rol predeterminado, e instala e instala ganchos.
apps-data
datos
Objetos, campos y relaciones bidireccionales.
apps-logic
Logic
Funciones de lógica, habilidades, agentes, conexiones y canales de mensajería.
layout-window-v1
Diseño
Visualizaciones, navegación, diseños de páginas, componentes frontales.
apps-operations
Operaciones
CLI, prueba, remotos, CI y publica tu aplicación.