Português
Começar

← Todos os templates · Produtividade

Faça deploy de Excalidraw em um clique

Quadro branco para diagramas e esboços em estilo desenhado à mão, com colaboração ao vivo

Uma alternativa auto-hospedada para Miro, FigJam e Lucidchart.

O que é Excalidraw?

O Excalidraw é um quadro branco virtual de código aberto em que formas, setas e textos parecem desenhados à mão. As pessoas esboçam nele diagramas de arquitetura, fluxogramas e wireframes, em reuniões ou para documentação, onde outros abririam o Miro ou o Lucidchart. Ele tem tela infinita, quadros, imagens, ponteiro de laser e modo escuro. A ferramenta Mermaid para Excalidraw transforma código Mermaid em formas editáveis, e um desenho é exportado como imagem PNG ou SVG ou salvo como arquivo .excalidraw para abrir de novo. Bibliotecas públicas de formas prontas, de ícones de nuvem a kits de UI, são adicionadas com um clique.

Este template roda a imagem do próprio Excalidraw junto com o servidor de colaboração dele, para que várias pessoas desenhem na mesma tela ao mesmo tempo. Clicar em Compartilhar e depois em Iniciar sessão gera um link que contém a chave da sessão, e os navegadores criptografam cada alteração antes que ela chegue ao servidor. Não há contas e o servidor não guarda desenhos: a tela de cada pessoa fica no navegador dela, e o app continua funcionando offline depois de carregado. O template também deixa de fora o script do Simple Analytics que a página da imagem carrega.

Os poréns: qualquer pessoa que tenha o endereço pode usá-lo. Os links de somente leitura (Exportar link) e as ferramentas de IA, Texto para diagrama e Wireframe para código, só funcionam no excalidraw.com, cujos servidores recusam outros sites. A cena e as imagens de uma sessão também ficam salvas, criptografadas, no Firebase do excalidraw.com, e é assim que o link dela a abre de novo mais tarde. E as páginas carregam as fontes do CDN do Excalidraw.

Hospedagem de Excalidraw no Pethost

  1. Você entra no Pethost com uma passkey, GitHub ou Google. Ainda não tem máquina? Você escolhe um plano, e o link espera até ela ficar pronta.
  2. Novo projeto abre em Excalidraw, e você clica em Criar projeto.
  3. Em um ou dois minutos Excalidraw está no ar no próprio endereço com HTTPS. Os segredos são gerados ao acaso, e os dados vão para o backup noturno.
  4. É um projeto como qualquer outro: você ou seu agente podem alterá-lo, fazer rollback ou restaurá-lo.

Perguntas sobre Excalidraw

O Excalidraw é gratuito e de código aberto?

Sim. O Excalidraw está sob a licença MIT, com o código no GitHub. O Excalidraw+, da mesma equipe, é uma versão hospedada por US$ 6 por usuário por mês que adiciona armazenamento na nuvem, cenas e pastas ilimitadas, permissões de acesso, apresentações e comentários.

Onde o Excalidraw salva meus desenhos?

No seu navegador. O Excalidraw salva a tela enquanto você desenha, no armazenamento local do navegador, e nada chega ao servidor. Outro navegador ou dispositivo começa vazio, e limpar os dados do site exclui o desenho, então guarde o que importa com Salvar como... → Salvar em um arquivo: a opção Abrir carrega o arquivo .excalidraw de novo.

Várias pessoas podem desenhar juntas em um Excalidraw auto-hospedado?

Sim, com este template. Clique em Compartilhar, depois em Iniciar sessão, e envie o link: quem abrir o link desenha na mesma tela e vê os ponteiros dos outros. A sessão é criptografada de ponta a ponta, com a chave na parte do link depois do #, que um navegador nunca envia a um servidor. A imagem Docker do Excalidraw não faz isso sozinha, então o template adiciona o servidor de colaboração do Excalidraw e aponta as páginas para ele.

Por que o botão Exportar link falha em um Excalidraw auto-hospedado?

Os links de somente leitura são guardados pelo servidor do excalidraw.com, que só os aceita do próprio excalidraw.com, então aqui o botão mostra um erro. Em vez disso, compartilhe uma sessão ao vivo ou o arquivo .excalidraw.

O Excalidraw consegue transformar código Mermaid em um diagrama?

Sim. A opção Mais ferramentas → Mermaid para Excalidraw recebe código Mermaid e o insere como formas e setas que você pode editar. Fluxogramas e diagramas de sequência, de classes e de entidade-relacionamento são convertidos; outros tipos entram como imagem. A conversão roda no navegador, ao contrário da ferramenta de IA Texto para diagrama, que só funciona no excalidraw.com.

O Excalidraw funciona offline?

Sim. Depois que a página carrega, o service worker dela guarda o app, então ele abre e você desenha sem conexão, e o Chrome ou o Edge podem instalá-lo como app. Uma sessão ao vivo precisa de conexão.

De quanta memória e disco Excalidraw precisa?

O Excalidraw é muito leve: cerca de 40 MB de memória com o servidor de colaboração, e não guarda nada, já que os desenhos ficam nos navegadores. No Pethost, o plano Starter basta, com espaço para outros apps ao lado.

Arquivo Docker Compose de Excalidraw

O template é este compose.yaml e as variáveis gravadas no .env do projeto quando ele é criado. O Pethost roda o arquivo exatamente como está escrito.

Containers: excalidraw (excalidraw/excalidraw@sha256:f7ee194addd607bf831d2af0f0a34463dd4225e426cf35199ef0b12a803398e9), room (excalidraw/excalidraw-room:sha-03ff435).

services:
  excalidraw:
    # Excalidraw publishes its image only as latest, built from its release branch, so the digest
    # pins one build of it: that of 2026-05-06. The app is pages for the browser, which keeps the
    # drawings: nothing of them is stored here.
    image: excalidraw/excalidraw@sha256:f7ee194addd607bf831d2af0f0a34463dd4225e426cf35199ef0b12a803398e9
    restart: unless-stopped
    # The pages are built to collaborate through excalidraw.com's server, which refuses any other
    # site's visitors: they are pointed at this address instead, whose /socket.io/ is the room.
    # Excalidraw's docs say the image has no analytics, though its page loads Simple Analytics'
    # script: the script is given no address.
    entrypoint:
      - sh
      - -c
      - |
        cd /usr/share/nginx/html
        sed -i 's#"https://oss-collab.excalidraw.com"#location.origin#g' assets/index-*.js
        sed -i 's#https://scripts.simpleanalyticscdn.com/latest.js##' index.html
        exec /docker-entrypoint.sh nginx -g 'daemon off;'
    configs:
      - source: nginx
        target: /etc/nginx/conf.d/default.conf
    # The image's own check asks localhost, which is ::1 first, where nginx listens only with the
    # file it was packaged with.
    healthcheck:
      test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://127.0.0.1"]
    depends_on:
      - room

  # Excalidraw's collaboration server: it relays a session's changes, encrypted in the browsers
  # with the key in the link's #, which never reaches it, and keeps nothing.
  room:
    image: excalidraw/excalidraw-room:sha-03ff435
    restart: unless-stopped

configs:
  nginx:
    content: |
      server {
        listen 80;
        root /usr/share/nginx/html;

        location /socket.io/ {
          proxy_pass http://room;
          proxy_http_version 1.1;
          proxy_set_header Upgrade $$http_upgrade;
          proxy_set_header Connection "upgrade";
          proxy_set_header Host $$host;
          proxy_read_timeout 1h;
        }
      }

Mais em Produtividade