← Torna al diario

reveal.js: temi, esportazione e come si confronta con le alternative

reveal.js è il framework di presentazioni HTML open source con 71,9k stelle su GitHub: scrivi le slide in HTML o Markdown e le presenti in qualsiasi browser. Ecco una guida onesta: come funzionano temi, template ed esempi, come si comporta davvero l'esportazione in PDF e PowerPoint, come si confronta con Slidev e Marp, e dove trova posto uno spazio di design agent-native.

reveal.js: temi, esportazione e come si confronta con le alternative

Se scrivi codice e devi tenere un intervento, probabilmente ti sei già imbattuto in reveal.js. È il framework open source dietro a una fetta enorme delle slide da conferenza per sviluppatori che hai visto: scrivi ogni slide in HTML o Markdown, e gira come una pagina web in qualsiasi browser — con temi, transizioni, animazioni dei frammenti, note del relatore ed export nativo in PDF già integrati. Con 71,9k stelle su GitHub e licenza MIT, è la risposta predefinita a "come faccio le slide senza aprire PowerPoint".

Questa guida ne è una mappa onesta. Cos'è davvero reveal.js, come si incastrano temi, template ed esempi, come si comporta realmente l'export in PDF e PowerPoint (c'è un tranello), come regge il confronto con gli altri contendenti open source e — la parte che la maggior parte degli articoli salta — dove un framework del genere smette di essere lo strumento giusto e qualcos'altro prende il testimone. Se stai valutando le tue opzioni per un flusso di lavoro per presentazioni assistito da IA e agenti, aiuta sapere esattamente cosa reveal.js è e cosa non è.

Cos'è reveal.js

reveal.js si definisce "The HTML Presentation Framework", e questa descrizione è precisa. Non è un'app che apri e in cui fai clic in giro — è una libreria JavaScript che inserisci in un file HTML. Ogni slide è un elemento <section>; annida le section e ottieni slide verticali. Dai stile a tutto con il CSS, colleghi transizioni e frammenti con gli attributi data e presenti aprendo la pagina in un browser. Poiché l'output è una pagina web, tutto ciò che il web sa fare — codice live, video incorporati, iframe, WebGL, i tuoi componenti — può vivere su una slide.

Il compromesso è lì, nella definizione stessa: questo è un framework per sviluppatori, non un'interfaccia grafica. I tuoi strumenti sono un editor di codice e un browser, non una tela con le maniglie di trascinamento. È esattamente per questo che gli sviluppatori lo adorano — controllo di versione completo, controllo completo del CSS, nessun formato di file proprietario — ed esattamente per questo che chi non programma ci rimbalzerà contro. È anche davvero gratuito: nessun account, nessuna filigrana, nessun limite di export, nessun prezzo per postazione. L'HTML è tuo.

Temi, template ed esempi

La maggior parte delle ricerche attorno a reveal.js riguarda in realtà come farlo apparire bene senza progettare da zero, quindi ecco come si incastrano i pezzi.

I temi di reveal.js sono il punto di partenza integrato. Il framework include una serie di temi già pronti — Black, White, League, Beige, Sky, Night, Serif, Simple, Solarized e altri — che cambi modificando un singolo link a un foglio di stile. Un tema è solo CSS, quindi un "tema reveal.js personalizzato" significa scrivere (o forkare) un file Sass/CSS che imposta i tuoi font, colori e stili dei titoli. Non c'è uno store di temi; stai modificando fogli di stile.

I template ed esempi di reveal.js vivono soprattutto nella community, più che in un'unica galleria ufficiale. Il repository include presentazioni di esempio, il sito della documentazione (revealjs.com) è esso stesso una presentazione reveal.js di cui puoi leggere il sorgente, e GitHub è pieno di template iniziali, boilerplate e wrapper di framework. Se cerchi "reveal js examples", quello con più valore è il sorgente stesso del sito ufficiale — dimostra quasi ogni funzionalità in contesto. Il tranello per i principianti: qui un "template" è un repository di codice da clonare e modificare, non un file di design da riempire.

Esportare in PowerPoint e PDF

L'export in PDF è una funzionalità di prima classe, integrata, e funziona bene. Aggiungi ?print-pdf all'URL della tua presentazione, apri la finestra di stampa del browser, scegli "Salva come PDF", e reveal.js ricompone ogni slide sulla propria pagina. Questo è il percorso pulito e supportato — il PDF che ottieni è identico alle tue slide.

Esportare reveal.js in PowerPoint è il punto in cui le aspettative vanno gestite. Non esiste un "Salva come .pptx" nativo che produca un file PowerPoint modificabile. La via pratica è la conversione PDF → PPTX, e quella conversione è con perdita: ogni slide arriva in PowerPoint come immagine piatta, non come caselle di testo, forme e layout modificabili. Quindi se qualcuno più a valle ha bisogno di aprire la tua presentazione in PowerPoint e modificarla — ridigitare un titolo, ristilizzare un grafico, riflusso di un elenco puntato — reveal.js non è lo strumento che glielo dà. È fatto per essere presentato dal browser, e la sua sorgente modificabile è l'HTML, non il .pptx. Saperlo prima di iniziare ti risparmia una spiacevole sorpresa il giorno in cui un collega chiede "il PowerPoint".

Alternative a reveal.js e il confronto

reveal.js non è l'unico modo di scrivere le slide come codice. Le due alternative open source più vicine — quelle che si intendono con "alternativa a reveal.js" — sono Slidev e Marp, ed è giusto essere onesti: Open Design si colloca in uno strato del tutto diverso, invece di competere frontalmente.

StrumentoRedazione.pptx modificabileTemplatingLicenza
reveal.jsHTML o MarkdownNo (PDF→PPTX sono immagini con perdita)Temi = CSS/Sass; template della communityMIT
SlidevMarkdown + VueNo (export immagine/PDF)Componenti Vue + temiMIT
MarpSolo MarkdownNo (PDF/PPTX come immagini)Temi Markdown (CSS)MIT
Open DesignDescrivilo al tuo agenteSì — output modificabile su un design systemTemplate di presentazione proprietariApache-2.0

Slidev è il fratello filosoficamente più vicino: è Markdown-first con componenti Vue sotto, quindi baratta parte della libertà HTML grezza di reveal.js con un flusso di redazione più strutturato ed ergonomico per gli sviluppatori. Se vivi nel mondo Vue/Vite e vuoi demo di codice live, Slidev è la scelta naturale. Marp va nella direzione opposta — solo Markdown, deliberatamente minimale, senza componenti — il che lo rende la via più rapida quando le tue slide sono per lo più testo e non vuoi mai pensare a un framework.

Tutti e tre sono framework code-first con la stessa forma fondamentale: scrivi la presentazione, la presenti in un browser, e l'output PowerPoint modificabile non è davvero il punto. Scegliere tra loro è soprattutto una questione di quale superficie di redazione vuoi (HTML grezzo, Markdown Vue o Markdown semplice) — non di capacità che uno ha e agli altri mancano.

Dove si colloca Open Design

Ecco il confine onesto. reveal.js ti chiede di scrivere la presentazione — ogni slide, in codice. È un pregio se vuoi un controllo HTML artigianale, e niente qui lo sostituisce se quello è il tuo obiettivo.

Open Design è uno strato diverso, ed è un prodotto che facciamo noi, quindi leggilo tenendolo presente. È un Agent-Native Design Workspace open source (Apache-2.0), local-first e con la tua chiave, che si colloca al di fuori dell'agente di codice che già usi — Claude Code, Codex o Cursor. Invece di scrivere l'HTML a mano, descrivi la presentazione che vuoi e l'agente ne genera una modificabile su un design system, così esce in linea con il brand e resta modificabile invece di congelarsi come un artefatto renderizzato. Open Design offre anche template di presentazione proprietari da cui partire.

Non è un sostituto di reveal.js se ciò che vuoi è scrivere le slide come codice con pieno controllo del CSS — quello è il terreno di casa di reveal.js ed è eccellente. Open Design è per il caso in cui preferiresti dare un brief a un agente piuttosto che scrivere markup, vuoi che l'output combaci con un design system su molte presentazioni e vuoi, alla fine, file modificabili che ti appartengono. Ricorri a reveal.js quando la presentazione è il codice che scrivi; ricorri a uno spazio di lavoro quando la presentazione è uno tra i tanti output in linea con il brand che un agente produce per te.

Domande frequenti

reveal.js è gratuito? Sì. reveal.js è open source sotto licenza MIT — gratuito per uso commerciale, senza account, senza filigrana e senza limiti di export. L'HTML lo ospiti tu.

Come aggiungo o cambio un tema di reveal.js? reveal.js include temi integrati (Black, White, League, Sky, Night, Serif e altri) che sostituisci cambiando un link a un foglio di stile. Un tema personalizzato significa scrivere o forkare un file CSS/Sass con i tuoi font e colori — non c'è uno store di temi da sfogliare.

Posso esportare reveal.js in PowerPoint? In un .pptx modificabile, no. reveal.js esporta in modo pulito in PDF (aggiungi ?print-pdf e stampa in PDF dal browser). Convertire quel PDF in PowerPoint è possibile ma con perdita — ogni slide finisce come immagine piatta, non come testo e forme modificabili. Se ti serve un PowerPoint modificabile, reveal.js non è la sorgente giusta.

reveal.js vs Slidev vs Marp — quale usare? Tutti e tre sono open source, code-first e con licenza MIT. Scegli reveal.js per il controllo HTML grezzo, Slidev per Markdown più componenti Vue (ottimo per le demo live) e Marp per le presentazioni più semplici, solo Markdown. Nessuno punta all'output PowerPoint modificabile.

Devo saper programmare per usare reveal.js? In pratica, sì. reveal.js è un framework per sviluppatori — lavori in un editor di testo con HTML, Markdown e CSS, non in un'interfaccia grafica drag-and-drop. Se invece vuoi descrivere una presentazione in linguaggio naturale, è proprio il vuoto che uno spazio di lavoro agent-native come Open Design colma.

In sintesi

reveal.js si merita le sue 71,9k stelle: è un modo gratuito, con licenza MIT e nativo dell'HTML di costruire slide che girano ovunque giri un browser, con temi veri, export pulito in PDF e pieno controllo del CSS. Entra però a occhi aperti — è un framework in cui scrivi, non un'app in cui fai clic, e "esportare in un PowerPoint modificabile" non è qualcosa che fa. Se vuoi redigere le presentazioni come codice, reveal.js (o Slidev / Marp) è un'ottima casa. Se preferisci descrivere una presentazione e far generare al tuo agente una versione modificabile, in linea con il brand e tua, è lì che subentra un Agent-Native Design Workspace.


← Torna al diario GitHub · Sorgente ↗