
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
How to get it
- 1
Clone and build from source
Clone the repository
git clone https://github.com/hakimel/reveal.js - 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
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
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| reveal.js (this) | 72.5k | Library | intermediate | 1 months ago | Developers who already write HTML, CSS, or JavaScript and want full control over slide design |
| marp | 12.7k | Other | beginner | 3 months ago | People who prefer writing slides as Markdown text rather than in a visual editor |
| slidev | 49.3k | Dev tool | beginner | 14 days ago | Developers who want to present code, technical talks, or architecture diagrams |
| impress.js | 38.2k | Library | intermediate | 4 months ago | Web developers who want a custom, browser-based slide deck |
| remark | 13k | Library | beginner | 2.4 years ago | People comfortable with HTML and CSS who want slides written in Markdown |
| nodeppt | 10.3k | Dev tool | intermediate | 5.8 years ago | Developers 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.