Marp: lo strumento per presentazioni in Markdown (e come esportare in PowerPoint)
Marp è l'ecosistema open source per presentazioni in Markdown: scrivi le slide in Markdown e poi esportale in HTML, PDF o PowerPoint con la Marp CLI. Questa guida illustra i temi di Marp, la scrittura in Markdown, l'esportazione in pptx (come immagini) con marp-cli, il confronto con reveal.js e Slidev, e dove si inserisce un Agent-Native Design Workspace.
Se hai cercato «marp» aspettandoti un termine odontoiatrico o ortodontico, questo è l'altro: Marp è il Markdown Presentation Ecosystem, un progetto open source (MIT) del team marp-team su GitHub per costruire presentazioni scrivendo puro Markdown. Niente riquadri da trascinare su una tela, nessun formato di file proprietario. Scrivi # Slide title e qualche punto elenco, aggiungi una direttiva o due, e Marp lo trasforma in una presentazione. (Il «MARPE» senza alcun legame che potresti aver visto è una procedura di espansione mascellare in ortodonzia, niente a che vedere con le slide. Questo articolo riguarda esclusivamente Marp, lo strumento per presentazioni.)
Marp è l'opzione più semplice e più nativa di Markdown tra gli strumenti di presentazione open source, ed è proprio per questo che gli sviluppatori vi ricorrono. Questa è una guida onesta su cosa sia Marp, su come funzionano la scrittura e i temi, su come la Marp CLI esporta verso PowerPoint e PDF (e sull'unica avvertenza che coglie tutti di sorpresa), su come si confronta con reveal.js e Slidev, e su dove subentra un design workspace quando Markdown arriva al capolinea.
Cos'è Marp
Marp è un piccolo ecosistema di strumenti costruito attorno a un'unica idea: le slide come Markdown. Ha tre parti in movimento. Marpit è il framework di basso livello che trasforma il Markdown più un tema in HTML e CSS delle slide. Marp Core è il motore pronto all'uso poggiato su Marpit, con un tema predefinito, gestione delle immagini e supporto alle formule. Marp CLI (marp-team/marp-cli) è lo strumento da riga di comando che renderizza il tuo file Markdown in HTML, PDF o PowerPoint. C'è anche un'estensione ufficiale per VS Code che ti offre un'anteprima affiancata in tempo reale mentre scrivi.
Scrivi in un unico file .md. Le slide sono separate da ---, le impostazioni per singola slide e globali si definiscono tramite direttive Marp (come theme:, paginate: o class:), e tutto resta testo semplice versionabile. È tutto qui il fascino: la tua presentazione fa il diff in modo pulito in Git, vive accanto al tuo codice e non ti vincola mai a un formato binario.
I temi di Marp e la scrittura in Markdown
Scrivere una presentazione Marp è volutamente minimale. Un blocco di front-matter in cima al file imposta le direttive globali, --- divide le slide, e il Markdown standard — titoli, elenchi, blocchi di codice, immagini, tabelle — diventa il tuo contenuto. Poiché Marp renderizza in HTML e CSS dietro le quinte, tutto ciò che il Markdown esprime si traduce in una slide senza sintassi aggiuntiva da imparare.
I temi di Marp sono semplicemente CSS. Marp Core include una manciata di temi integrati (default, gaia, uncover), e passi dall'uno all'altro con una singola direttiva theme:. Quando quelli integrati non bastano, scrivi il tuo tema come file CSS: prendi di mira le classi che Marpit espone, registralo nella CLI tramite --theme o --theme-set, e ogni slide lo adotta. Per ritocchi inline puoi inserire un blocco <style> con ambito limitato in una singola slide. Questo modello CSS-nativo è al tempo stesso il soffitto e il pavimento di Marp: se hai dimestichezza con il CSS hai pieno controllo, e se non ce l'hai, i valori predefiniti restano comunque puliti.
Esportare Marp in PowerPoint e PDF
È nell'esportazione che la Marp CLI si guadagna il suo posto. Puntala sul tuo Markdown e scegli una destinazione:
- HTML —
marp deck.md -o deck.htmlproduce una presentazione web autonoma che esponi nel browser. - PDF —
marp deck.md --pdfrenderizza un PDF pronto per la stampa, ideale per dispense e condivisione. - PowerPoint —
marp deck.md --pptxesporta un file.pptxche puoi aprire in PowerPoint o Keynote.
L'unica avvertenza che vale la pena dire chiaramente: l'esportazione PPTX di Marp renderizza ogni slide come un'immagine, non come forme PowerPoint native e modificabili. Ogni slide diventa un'immagine a tutta pagina all'interno dell'involucro .pptx. È perfetto quando devi consegnare un file a qualcuno che vive in PowerPoint e deve solo presentarlo, ma, una volta esportato, non puoi cliccare per modificare una casella di testo, ricolorare una forma o spostare un punto elenco. Se il tuo flusso di lavoro deve continuare a modificare in PowerPoint in seguito, tratta il pptx di Marp come un formato di consegna, non come un formato sorgente. (Modalità di esportazione «modificabile» sperimentali sono andate e venute; il comportamento affidabile e documentato è un'immagine per slide.)
Marp vs Slidev vs reveal.js
Marp non è l'unico strumento di presentazione Markdown-first. Ecco il confronto onesto lungo gli assi che decidono la tua scelta:
| Strumento | Scrittura | Esportazione PPTX modificabile | Templating | Licenza |
|---|---|---|---|---|
| Marp | Markdown puro + direttive | pptx come immagini (non forme modificabili) | Temi CSS | MIT |
| reveal.js | HTML (plugin Markdown opzionale) | Nessun pptx nativo | Temi HTML/CSS | MIT |
| Slidev | Markdown + componenti Vue | Nessun pptx nativo (PDF/PNG/SPA) | Temi Vue + Windi/UnoCSS | MIT |
| Open Design | Descrivilo al tuo agente | Presentazione modificabile basata su un design system | Design system + libreria di template | Apache-2.0 |
Marp è la scelta quando vuoi il minimo di cerimonie: un unico file Markdown e una CLI. reveal.js è il maturo framework di slide web: HTML-first, personalizzabile all'infinito e con l'esperienza più ricca nel browser, ma scrivi HTML e non c'è un percorso nativo verso PowerPoint. Slidev sta nel mezzo, per gli sviluppatori che vogliono Markdown più veri componenti Vue, evidenziazione del codice ed embed interattivi: più potenza di Marp, ma anche più configurazione. Tutti e tre hanno licenza MIT e nessuno esporta qualcosa di direttamente modificabile in PowerPoint.
Dove si inserisce Open Design
Marp eccelle esattamente in una cosa: prendere il Markdown che hai già scritto e trasformarlo in slide. Ma chiede a te di scrivere la presentazione: la struttura, la formulazione, il CSS del tema. Non genera il contenuto, non lo mantiene coerente con il brand tra i progetti, né ti dà un artefatto modificabile una volta esportato.
Open Design è il livello sopra tutto questo. È un Agent-Native Design Workspace open source (Apache-2.0), local-first e con le tue chiavi, che si colloca al di fuori dell'agente di codice che già usi. Invece di scrivere Markdown a mano, descrivi la presentazione che vuoi e l'agente ne genera una modificabile basata su un design system, con template di presentazioni HTML di prima parte nella sua libreria di plugin da cui partire. Non è un sostituto del Marp scritto in Markdown: quando hai già il contenuto in Markdown e vuoi una presentazione veloce dalla riga di comando, Marp è lo strumento giusto. Quando vuoi che la presentazione sia generata, coerente con il brand e ancora modificabile come parte di un flusso di progettazione più ampio, è compito del workspace. Se già crei slide con un agente di codice, guarda come un agente di codice crea presentazioni.
Domande frequenti
Cos'è Marp? Marp è il Markdown Presentation Ecosystem open source del team marp-team su GitHub. Scrivi le slide in Markdown e la Marp CLI le esporta in HTML, PDF o PowerPoint. Ha licenza MIT e include Marp Core, il framework Marpit e un'estensione per VS Code. Non ha alcun legame con il termine ortodontico «MARPE».
Come esporto una presentazione Marp in PowerPoint? Installa la Marp CLI (marp-cli) ed esegui marp deck.md --pptx. Nota che il .pptx esportato renderizza ogni slide come un'immagine, non come forme PowerPoint native e modificabili: ottimo per la consegna, ma poi non potrai modificare il testo o le forme dentro PowerPoint.
Marp può esportare file PowerPoint modificabili? Non in modo affidabile. Il comportamento PPTX documentato di Marp è un'immagine per slide. Se ti serve un .pptx nativamente modificabile con vere caselle di testo e forme, per quel passaggio Marp è lo strumento sbagliato.
Marp è gratuito? Sì. Marp è open source sotto licenza MIT, quindi è libero da usare, auto-ospitare e modificare.
Marp vs reveal.js vs Slidev — quale dovrei usare? Scegli Marp per le presentazioni in puro Markdown più semplici e un'esportazione facile in PDF/pptx, reveal.js per un maturo framework di slide web HTML-first con personalizzazione profonda, e Slidev per Markdown più componenti Vue interattivi. Tutti e tre hanno licenza MIT; nessuno esporta PowerPoint direttamente modificabile.
In sintesi
Marp è il modo più pulito per trasformare in slide il Markdown che hai già: un unico file .md, temi CSS e una CLI che esporta HTML, PDF e PowerPoint. Ricorda solo l'unico limite onesto: il pptx esce come immagini, quindi trattalo come un formato di consegna e non come qualcosa che continuerai a modificare in PowerPoint. Se la tua esigenza è «ho il Markdown, dammi una presentazione», Marp è difficile da battere. Quando la presentazione deve essere generata, restare coerente con il brand e rimanere modificabile all'interno di un flusso di progettazione più ampio, è lì che subentra un Agent-Native Design Workspace.