Skip to content

nodeppt

Makes web-based slide decks from Markdown files, with HTML/CSS styling and charts.

Stars
10.3k
Forks
2k
Licence
MIT
Language
JavaScript
Last update
5.8 years ago
Type
Dev tool

This repository is archived and no longer maintained.

What it is

nodeppt turns a single Markdown file into a presentation that runs in a web browser. You write slides separated by a slide tag, add simple settings at the top of the file, and use the nodeppt commands to create, preview, or build the slides. The README says it is built on WebSlides, webpack, markdown-it, and posthtml, and it supports speaker mode, keyboard shortcuts, animations, and charts (echarts, mermaid, KaTeX).

  • Write a talk in a Markdown file and preview it locally with the serve command
  • Build a static slide deck with the build command for hosting
  • Show a chart inside a slide using the echarts code fence
  • Add a flowchart or sequence diagram with the mermaid code fence
  • Open speaker mode by adding ?mode=speaker to the slide URL for two-screen presenting

Great for

  • Developers who prefer writing slides in Markdown over a visual editor
  • People comfortable with a command line who want simple web-hosted slides
  • Technical presenters who need code highlighting or diagrams inside slides
  • Anyone who already knows basic HTML/CSS classes and wants fine layout control

Not ideal for

  • Non-technical users who need a drag-and-drop editor, since it requires installing Node.js and using the terminal
  • Projects needing active maintenance, because the repository is archived and the last push was January 2021
  • Presenters who need a browser other than Chrome, since the README says Chrome is the best-supported browser and it does not address other browsers

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js (version not stated in README) · npm

    Install nodeppt globally

    npm install -g nodeppt
  2. 2

    Run it

    • Create a new slide file with: nodeppt new slide.md
    • Start a local preview with: nodeppt serve slide.md
    • Open the local address shown in the terminal in Chrome to view the slides
    • Build a static version with: nodeppt build slide.md
  3. 3

    Get the most out of it

    • Use the top-of-file YAML settings for title, speaker, custom JS/CSS, and prism code theme
    • Add the ?mode=speaker parameter to the URL to open speaker mode for two-screen presenting
    • Use the :::TYPE blocks for layouts such as column, card, steps, and gallery
    • Add a public folder to serve static files and copy them into the build output
    • Create a nodeppt.config.js file to customize the underlying webpack settings

Downloads

Strengths

  • Slides are plain Markdown text, so they are easy to version-control and edit
  • Includes speaker notes, keyboard navigation, overview mode, and PDF printing from Chrome
  • Supports built-in charts, diagrams, and math notation through plugins

Trade-offs

  • The repository is archived and was last updated in January 2021, so it may not work with current tooling without fixes
  • Documentation is mostly in Chinese, and the README is truncated in places, so setup details may be incomplete
  • Styling and layout rely on class names from the WebSlides system, which requires learning many options

How it compares

ProjectStarsTypeLevelUpdatedBest for
nodeppt (this)10.3kDev toolintermediate5.8 years agoDevelopers who prefer writing slides in Markdown over a visual editor
reveal.js72.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
remark13kLibrarybeginner2.4 years agoPeople comfortable with HTML and CSS who want slides written in Markdown
mdx-deck11.5kDev toolintermediate3.8 years agoDevelopers who already write React and want to present technical material

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.