explaingit

gnab/remark

12,996JavaScriptAudience · developerComplexity · 1/5LicenseSetup · easy

TLDR

A browser-based slideshow tool where you write your slides as plain Markdown text in a single HTML file and the browser turns them into a working presentation, no install, no build step, no design software needed.

Mindmap

mindmap
  root((remark))
    What it does
      Browser slideshows
      Markdown-based
      No installation
    Features
      Presenter mode
      Speaker notes
      Code highlighting
      Dual-screen support
    Distribution
      Single HTML file
      Static web server
    Use Cases
      Tech conference talks
      Course slides
      Documentation
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Create a technical presentation with syntax-highlighted code slides using only a text editor and a browser

USE CASE 2

Present to an audience on a second screen while privately viewing your speaker notes on your laptop in the same browser session

USE CASE 3

Export your presentation to PDF using Chrome's built-in print feature or the DeckTape command-line tool

Tech stack

JavaScriptHTMLMarkdown

Getting it running

Difficulty · easy Time to first run · 5min
MIT: use, modify, and share freely for any purpose including commercially, with no restrictions beyond keeping the copyright notice.

In plain English

Remark is a tool that lets you build slideshows entirely inside a web browser, using a plain text format called Markdown. Instead of opening PowerPoint or Keynote, you write your slides as simple text with headers and bullet points, and the browser turns that text into a working presentation. No installation is required beyond a basic HTML file that loads the remark script. Setting it up is straightforward. You create an HTML file, paste in a short template, and write all your slide content inside a text block in that file. When you open the file in a browser, your slides appear. You can then edit the text, save the file, and refresh the browser to see changes. The tool reads the Markdown on the fly, so there is no separate build step. Remark includes a presenter mode where you can view your speaker notes privately while the audience sees only the slides. You trigger this by pressing a key in the browser. You can also clone the display to a second screen, which is useful when presenting from a laptop connected to a projector. Slides scale automatically to fit different screen sizes, so the same file works on a phone, a laptop, or a large monitor. Code samples inside slides get syntax highlighting for a range of programming languages. To print or export slides as a PDF, the README points to Chrome's built-in print-to-PDF feature, though it notes the visual output is not pixel-perfect. An external tool called DeckTape is also mentioned as a more precise export option. The project is licensed under the MIT license, which means it is free to use and modify. The README lists a very large number of contributors, suggesting the project has been maintained and refined by a broad community over time. Documentation and how-to guides live in the project's wiki on GitHub.

Copy-paste prompts

Prompt 1
Create a Remark slideshow with 5 slides covering REST API basics, with syntax-highlighted code examples in each slide
Prompt 2
How do I add speaker notes to a Remark presentation and activate presenter mode during a live talk?
Prompt 3
Set up a Remark slideshow that clones to a projector while showing my speaker notes only on my laptop screen
Prompt 4
Show me the DeckTape command to export a Remark presentation to a PDF with correct slide dimensions
Prompt 5
How do I apply a custom CSS theme to a Remark presentation to match my company's brand colors?
Open on GitHub → Explain another repo

← gnab on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.