npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

div-deck

v0.5.0

Published

Browser-based editor for HTML slide decks

Readme

div.deck

A browser-based slide deck editor for AI-generated HTML presentations.

The Problem

AI tools are great at generating HTML slide decks from project context — architecture docs, code, meeting notes. Single-file HTML is the perfect format for this: no build step, no dependencies, version-controlled alongside your code. But the output is never quite right. You end up doing round trips back to the LLM: "move this bullet," "swap these slides," "change that heading." Each iteration takes time and often breaks something else.

div.deck gives you the best of both worlds: fast creation with AI, fine-grained editing by hand. Generate an HTML deck with the /new-deck skill, then open it in the visual editor to drag, click, and type your way to a polished result.

div.deck editor

What You Get

npx div-deck init sets up three things in your project:

  1. The /new-deck skill — a Claude Code skill (installed via the plugin marketplace) that generates self-contained HTML slide decks from your project context. It knows six slide types (title, divider, content, split, dashboard, table), four visual aesthetics, and the full CSS/JS contract that makes decks work as both standalone files and editable documents.

  2. The editor — a React + Express app that runs locally. Slides render in iframes for perfect style isolation. You get click-to-select, inline text editing, drag-to-reorder, undo/redo, presentation mode, and PDF export.

  3. An npm script and slash commandnpm run deck and /decks in Claude Code both launch the editor and open your browser.

Quick Start

npx div-deck init

The installer walks you through setup — picking a presentations directory, adding the npm script, and installing the skill. Once done:

# Create a new deck from your project context
/new-deck

# Launch the editor
npm run deck

Or run the editor directly:

npx div-deck ./presentations     # specify a directory
npx div-deck --port 8080         # custom port (default: 3001)

Features

  • File browser — list, open, and delete .html slide decks
  • Visual editing — click any element to select it, click again to edit text inline
  • Drag to reorder — reorder slides in the sidebar or elements within a slide
  • Undo/redo — full history with Cmd+Z / Cmd+Shift+Z
  • Presentation mode — full-screen slideshow with keyboard navigation
  • Export PDF — export via the browser's print dialog (Cmd+P)
  • Git status — shows current branch and file status in the toolbar

Keyboard Shortcuts

| Shortcut | Action | | ----------------- | --------------------------------- | | Cmd+S | Save | | Cmd+Z | Undo | | Cmd+Shift+Z | Redo | | Cmd+P | Export PDF | | Left/Right arrows | Navigate slides | | Delete/Backspace | Delete selected element | | Escape | Deselect / Exit presentation mode |

How It Works

div.deck runs a single local Express server that serves both the editor UI (React + Vite) and a file API for reading/writing HTML presentations.

Slides render inside iframes for style isolation — your deck's CSS never leaks into the editor and vice versa. An injected bridge script handles all in-slide interaction (hover handles, selection, inline editing, drag-to-reorder) via postMessage.

Each presentation is a single self-contained HTML file — no build step, no external dependencies. Open it in any browser to present, or in div.deck to edit.

Sample Presentations

The presentations/ directory includes example decks you can explore:

  • how-divdeck-works.html — a walkthrough of div.deck's architecture and philosophy
  • element-test.html — a reference deck showing all supported slide types and layouts
  • custom-brand.html — demonstrates branding integration

Open any of these in the editor to see what's possible, or browse them standalone in your browser.

License

MIT