← Voltar ao diário

Marp: a ferramenta de apresentações em Markdown (e como exportar para PowerPoint)

O Marp é o ecossistema open source de apresentações em Markdown: escreva os slides em Markdown e depois exporte para HTML, PDF ou PowerPoint com a Marp CLI. Este guia aborda os temas do Marp, a escrita em Markdown, a exportação para pptx (como imagens) com o marp-cli, como ele se compara ao reveal.js e ao Slidev, e onde um Agent-Native Design Workspace entra em cena.

Marp: a ferramenta de apresentações em Markdown (e como exportar para PowerPoint)

Se você pesquisou «marp» esperando um termo odontológico ou ortodôntico, este é o outro: o Marp é o Markdown Presentation Ecosystem — um projeto open source (MIT) da equipe marp-team no GitHub para criar apresentações escrevendo Markdown puro. Sem arrastar caixas por um canvas, sem formato de arquivo proprietário. Você escreve # Slide title e alguns tópicos, adiciona uma diretiva ou duas, e o Marp transforma isso em uma apresentação. (O «MARPE» sem relação que você pode ter visto é um procedimento de expansão maxilar na ortodontia — nada a ver com slides. Este artigo trata estritamente do Marp, a ferramenta de apresentações.)

O Marp é a opção mais simples e mais nativa de Markdown entre as ferramentas de apresentação open source, e é exatamente por isso que os desenvolvedores recorrem a ela. Este é um guia honesto sobre o que é o Marp, como funcionam a escrita e os temas, como a Marp CLI exporta para PowerPoint e PDF (e a única ressalva que pega as pessoas de surpresa), como ele se compara ao reveal.js e ao Slidev, e onde um design workspace assume quando o Markdown chega ao limite.

O que é o Marp

O Marp é um pequeno ecossistema de ferramentas construído em torno de uma ideia: slides como Markdown. Ele tem três partes móveis. O Marpit é o framework de baixo nível que transforma Markdown mais um tema no HTML e CSS dos slides. O Marp Core é o motor pronto para uso sobre o Marpit, com um tema padrão, tratamento de imagens e suporte a fórmulas. A Marp CLI (marp-team/marp-cli) é a ferramenta de linha de comando que renderiza seu arquivo Markdown em HTML, PDF ou PowerPoint. Há também uma extensão oficial do VS Code que oferece uma prévia lado a lado em tempo real enquanto você digita.

Você escreve em um único arquivo .md. Os slides são separados por ---, as configurações por slide e globais são definidas por diretivas do Marp (como theme:, paginate: ou class:), e tudo permanece como texto puro versionável. É aí que está todo o apelo: sua apresentação faz diff de forma limpa no Git, fica ao lado do seu código e nunca prende você a um formato binário.

Temas do Marp e escrita em Markdown

Escrever uma apresentação no Marp é deliberadamente minimalista. Um bloco de front-matter no topo do arquivo define as diretivas globais, --- quebra os slides, e o Markdown padrão — títulos, listas, blocos de código, imagens, tabelas — vira o seu conteúdo. Como o Marp renderiza para HTML e CSS por baixo dos panos, tudo o que o Markdown expressa se mapeia para um slide sem sintaxe extra a aprender.

Os temas do Marp são apenas CSS. O Marp Core traz um punhado de temas integrados (default, gaia, uncover), e você alterna entre eles com uma única diretiva theme:. Quando os integrados não bastam, você escreve seu próprio tema como um arquivo CSS — mira nas classes que o Marpit expõe, registra-o na CLI via --theme ou --theme-set, e cada slide o adota. Para ajustes inline, você pode inserir um bloco <style> com escopo em um único slide. Esse modelo nativo de CSS é ao mesmo tempo o teto e o piso do Marp: se você é à vontade com CSS, tem controle total, e se não é, os padrões continuam com aparência limpa.

Exportando o Marp para PowerPoint e PDF

É na exportação que a Marp CLI justifica seu lugar. Aponte-a para o seu Markdown e escolha um destino:

  • HTMLmarp deck.md -o deck.html produz uma apresentação web autossuficiente que você exibe no navegador.
  • PDFmarp deck.md --pdf renderiza um PDF pronto para impressão, ideal para materiais de apoio e compartilhamento.
  • PowerPointmarp deck.md --pptx exporta um arquivo .pptx que você pode abrir no PowerPoint ou no Keynote.

A única ressalva que vale dizer sem rodeios: a exportação PPTX do Marp renderiza cada slide como uma imagem, não como formas nativas e editáveis do PowerPoint. Cada slide vira uma imagem de sangria total dentro do invólucro .pptx. Isso é perfeito quando você precisa entregar um arquivo a alguém que vive no PowerPoint e só precisa apresentá-lo — mas, uma vez exportado, você não consegue clicar para editar uma caixa de texto, recolorir uma forma ou mover um tópico. Se o seu fluxo precisar continuar editando no PowerPoint depois, trate o pptx do Marp como um formato de entrega, não um formato de origem. (Modos de exportação «editável» experimentais surgiram e sumiram; o comportamento confiável e documentado é uma imagem por slide.)

Marp vs Slidev vs reveal.js

O Marp não é a única ferramenta de apresentação com abordagem Markdown-first. Aqui vai a comparação honesta pelos eixos que decidem a sua escolha:

FerramentaEscritaExportação PPTX editávelTemplatingLicença
MarpMarkdown puro + diretivaspptx como imagens (não são formas editáveis)Temas CSSMIT
reveal.jsHTML (plugin de Markdown opcional)Sem pptx nativoTemas HTML/CSSMIT
SlidevMarkdown + componentes VueSem pptx nativo (PDF/PNG/SPA)Temas Vue + Windi/UnoCSSMIT
Open DesignDescreva para o seu agenteApresentação editável sobre um design systemDesign system + biblioteca de templatesApache-2.0

Marp é a escolha quando você quer o mínimo de cerimônia — um único arquivo Markdown e uma CLI. reveal.js é o maduro framework de slides web: HTML-first, personalizável sem fim e com a experiência mais rica no navegador, mas você escreve HTML e não há um caminho nativo para o PowerPoint. Slidev fica no meio, para desenvolvedores que querem Markdown mais componentes Vue de verdade, realce de código e embeds interativos — mais poder que o Marp, mas também mais configuração. Os três têm licença MIT e nenhum exporta nada diretamente editável no PowerPoint.

Onde o Open Design entra

O Marp é excelente em exatamente uma coisa: pegar o Markdown que você já escreveu e transformá-lo em slides. Mas ele pede que você escreva a apresentação — a estrutura, a redação, o CSS do tema. Ele não gera o conteúdo, não o mantém fiel à marca entre projetos, nem lhe dá um artefato editável depois de exportado.

Open Design é a camada acima disso. É um Agent-Native Design Workspace open source (Apache-2.0), local-first e com suas próprias chaves, que fica fora do agente de código que você já usa. Em vez de escrever Markdown à mão, você descreve a apresentação que quer, e o agente gera uma editável sobre um design system — com templates próprios de apresentações HTML na sua biblioteca de plugins como ponto de partida. Não é um substituto para o Marp escrito em Markdown: quando você já tem o conteúdo em Markdown e quer uma apresentação rápida pela linha de comando, o Marp é a ferramenta certa. Quando você quer a apresentação gerada, fiel à marca e ainda editável como parte de um fluxo de design maior, esse é o trabalho do workspace. Se você já faz slides com um agente de código, veja como um agente de código cria apresentações.

Perguntas frequentes

O que é o Marp? O Marp é o Markdown Presentation Ecosystem open source da equipe marp-team no GitHub. Você escreve slides em Markdown, e a Marp CLI os exporta para HTML, PDF ou PowerPoint. Tem licença MIT e inclui o Marp Core, o framework Marpit e uma extensão do VS Code. Não tem relação com o termo ortodôntico «MARPE».

Como exporto uma apresentação do Marp para o PowerPoint? Instale a Marp CLI (marp-cli) e execute marp deck.md --pptx. Observe que o .pptx exportado renderiza cada slide como uma imagem, não como formas nativas e editáveis do PowerPoint — ótimo para repasse, mas você não conseguirá editar o texto ou as formas dentro do PowerPoint depois.

O Marp pode exportar arquivos editáveis do PowerPoint? Não de forma confiável. O comportamento PPTX documentado do Marp é uma imagem por slide. Se você precisa de um .pptx nativamente editável, com caixas de texto e formas de verdade, o Marp é a ferramenta errada para essa etapa.

O Marp é gratuito? Sim. O Marp é open source sob a licença MIT, então é livre para usar, hospedar por conta própria e modificar.

Marp vs reveal.js vs Slidev — qual devo usar? Escolha o Marp para as apresentações em Markdown puro mais simples e uma exportação fácil para PDF/pptx, o reveal.js para um maduro framework de slides web com abordagem HTML-first e personalização profunda, e o Slidev para Markdown mais componentes Vue interativos. Os três têm licença MIT; nenhum exporta PowerPoint diretamente editável.

A conclusão

O Marp é a maneira mais limpa de transformar em slides o Markdown que você já tem — um único arquivo .md, temas CSS e uma CLI que exporta HTML, PDF e PowerPoint. Só lembre da única limitação honesta: o pptx sai como imagens, então trate-o como um formato de entrega, e não como algo que você continuará editando no PowerPoint. Se a sua necessidade é «tenho o Markdown, me dê uma apresentação», o Marp é difícil de superar. Quando a apresentação precisa ser gerada, permanecer fiel à marca e continuar editável dentro de um fluxo de design maior, é aí que um Agent-Native Design Workspace assume.


← Voltar ao diário GitHub · Fonte ↗