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.
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:
- HTML —
marp deck.md -o deck.htmlproduz uma apresentação web autossuficiente que você exibe no navegador. - PDF —
marp deck.md --pdfrenderiza um PDF pronto para impressão, ideal para materiais de apoio e compartilhamento. - PowerPoint —
marp deck.md --pptxexporta um arquivo.pptxque 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:
| Ferramenta | Escrita | Exportação PPTX editável | Templating | Licença |
|---|---|---|---|---|
| Marp | Markdown puro + diretivas | pptx como imagens (não são formas editáveis) | Temas CSS | MIT |
| reveal.js | HTML (plugin de Markdown opcional) | Sem pptx nativo | Temas HTML/CSS | MIT |
| Slidev | Markdown + componentes Vue | Sem pptx nativo (PDF/PNG/SPA) | Temas Vue + Windi/UnoCSS | MIT |
| Open Design | Descreva para o seu agente | Apresentação editável sobre um design system | Design system + biblioteca de templates | Apache-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.