Documentação do Dominossauro

Aprenda a criar APIs, automações e integrações de forma visual com TypeScript.

Introdução

O Dominossauro é um framework low-code que permite criar APIs, automações e integrações de forma visual, sem abrir mão do poder do código TypeScript/JavaScript.

Diferente de outras plataformas low-code, o Dominossauro roda diretamente no VS Code e gera código versionável que pode ser revisado, testado e deployado como qualquer aplicação.

Por que usar o Dominossauro?

  • Visual + Código: Modele fluxos visualmente e escreva código quando necessário
  • VS Code nativo: IntelliSense, debugging e todas as extensões
  • Versionável: Seus fluxos são arquivos .dom que funcionam com Git
  • TypeScript first: Type safety e autocompletar em todo lugar
  • Sem vendor lock-in: Código gerado é seu e portável

Instalação

Requisitos

  • Node.js 18+ ou 20+
  • VS Code 1.80+
  • Git (opcional, mas recomendado)

Passo 1: Instalar a extensão

Instale a extensão Dominossauro no VS Code Marketplace:

ext install dominossauro.dominossauro

Passo 2: Criar projeto

Use o CLI para criar um novo projeto:

npx create-dominossauro my-project
cd my-project
npm install

Passo 3: Abrir no VS Code

code .

Pronto! Agora você pode criar seu primeiro arquivo .dom e começar a construir.

Quick Start

Criar sua primeira API

Vamos criar uma API simples que retorna informações de um usuário.

1. Criar arquivo .dom

Crie um arquivo api/users.dom:

// api/users.dom
trigger: http
method: GET
path: /api/users/:id

flow:
  - fetchUser
  - transform
  - response

2. Configurar os nós

Use o editor visual para adicionar os nós:

  • fetchUser: Nó HTTP que busca dados de uma API externa
  • transform: Nó de função para transformar os dados
  • response: Nó de resposta HTTP

3. Adicionar lógica TypeScript

No nó transform, adicione o código:

export async function transform(context: Context) {
  const userData = context.data.user;
  
  return {
    id: userData.id,
    name: userData.name,
    email: userData.email,
    createdAt: new Date(userData.created_at).toISOString()
  };
}

4. Executar e testar

Execute o servidor de desenvolvimento:

npm run dev

Teste a API:

curl http://localhost:3000/api/users/123

Arquivos .dom

Arquivos .dom são a base do Dominossauro. Eles definem fluxos de trabalho usando uma sintaxe declarativa que é fácil de ler e versionar.

Estrutura básica

// Trigger: define como o fluxo é iniciado
trigger: http | cron | manual | webhook

// Configuração do trigger
config:
  method: GET | POST | PUT | DELETE | PATCH
  path: /api/endpoint
  schedule: "0 */5 * * *"  // Para cron

// Fluxo de nós
flow:
  - nodeId1
  - nodeId2
  - nodeId3

// Definição dos nós
nodes:
  nodeId1:
    type: http | function | transform | database
    config:
      url: https://api.example.com
      method: GET

Tipos de Triggers

TriggerDescriçãoExemplo de uso
httpEndpoint HTTP/RESTAPIs, webhooks recebidos
cronAgendamento temporalJobs, relatórios, limpezas
manualExecução manualScripts, migrações
webhookWebhook de terceirosGitHub, Stripe, Slack

Pronto para começar?

Instale a extensão do VS Code e comece a criar suas automações agora mesmo.