Skip to content

reveal.js

A free HTML framework for building slide presentations that run in a web browser.

Stars
72.5k
Forks
17k
Licence
MIT
Language
JavaScript
Last update
1 months ago
Type
Library

What it is

reveal.js is an open source HTML presentation framework. You write slides as web pages, and the result runs in any browser, so you can present or share it without special presentation software. The README highlights features such as Markdown slides, speaker notes, PDF export, LaTeX math, syntax-highlighted code, and an API for customization.

  • Build a slide deck in HTML or Markdown and present it in a browser
  • Add speaker notes and open a separate speaker view while presenting
  • Export a presentation to PDF using the documented PDF export feature
  • Include syntax-highlighted code samples or LaTeX equations in slides

Great for

  • Developers who already write HTML, CSS, or JavaScript and want full control over slide design
  • People who want presentations as code that can be versioned and reviewed like other files
  • Teams who need slides with code samples or math notation
  • Anyone who wants a free, self-hosted alternative to a proprietary slide tool

Not ideal for

  • People who want a drag-and-drop editor: the README points to Slides.com, a separate graphical editor by the same authors, for that
  • Non-technical users who do not want to edit HTML or configuration files, since setup assumes some web development familiarity
  • Those needing a paid video course to learn it: the README links a course, but it is a paid product and the README does not describe its contents
Step-by-step guide: how to use reveal.jsInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Clone and build from source

    Clone the repository

    git clone https://github.com/hakimel/reveal.js
  2. 2

    Run it

    • Follow the installation guide at revealjs.com/installation
    • Open the demo presentation at revealjs.com/demo to see what is possible
    • Create an HTML file that loads reveal.js and add your slides
    • Open the file in a browser to present
  3. 3

    Get the most out of it

    • Use Markdown support to write slide content in plain text
    • Enable speaker notes and open the speaker view while presenting
    • Use Auto-Animate to create smooth transitions between related slides
    • Export to PDF with the PDF export feature for sharing
    • Use the extensive API to customize behavior with JavaScript

Downloads

Strengths

  • Free and MIT licensed, with a large community (about 72,000 stars on GitHub)
  • Presentations are plain web files that run in any modern browser and can be hosted anywhere
  • Documented feature set covering Markdown, speaker notes, PDF export, and math

Trade-offs

  • Requires comfort with HTML and a build or hosting step, which is a barrier for non-developers
  • The README is truncated here, so details of specific browser support and version requirements are not confirmed
  • Design polish depends on your own CSS and theme choices

How it compares

ProjectStarsTypeLevelUpdatedBest for
reveal.js (this)72.5kLibraryintermediate1 months agoDevelopers who already write HTML, CSS, or JavaScript and want full control over slide design
marp12.7kOtherbeginner3 months agoPeople who prefer writing slides as Markdown text rather than in a visual editor
slidev49.3kDev toolbeginner14 days agoDevelopers who want to present code, technical talks, or architecture diagrams
impress.js38.2kLibraryintermediate4 months agoWeb developers who want a custom, browser-based slide deck
remark13kLibrarybeginner2.4 years agoPeople comfortable with HTML and CSS who want slides written in Markdown
nodeppt10.3kDev toolintermediate5.8 years agoDevelopers who prefer writing slides in Markdown over a visual editor

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.