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

planloft

v0.3.0

Published

Agent-native document compiler with focused authoring and customization skills, deep CLI help, and light/dark themed output.

Readme

planloft

Turn Markdown, JSON, HTML, and agent-written plans into light-and-dark themed, shareable documents.

Planloft is a CLI for writing, storing, previewing, and explicitly publishing documents. It includes optional agent skills for saving substantial plans and customizing Planloft.

What it does

  • Stores documents by project, keyed by the Git remote when available.
  • Renders self-contained HTML with built-in light and dark themes.
  • Previews locally and copies source back into a repository.
  • Publishes expiring review links to GitHub Pages only when explicitly requested.
  • Accepts Markdown, a versioned JSON envelope, or explicitly trusted HTML.

Install

CLI-only

Install the CLI with one package manager, then initialize it:

npm install -g planloft
# or: pnpm add -g planloft
# or: bun add -g planloft

planloft init

planloft init creates the default configuration if needed, keeps an existing valid configuration unchanged, and reports GitHub readiness. It does not publish anything. Use planloft init --force only to replace config.json with exact defaults. The reset discards configured settings and credentials but preserves stored documents, custom themes, hosting clones, and project files.

CLI plus planloft-write-doc

Install the CLI above, then install the skill for the agent that should write Planloft plans:

# Codex
npx skills add hatim-s/planloft --skill planloft-write-doc -a codex

# Claude Code
npx skills add hatim-s/planloft --skill planloft-write-doc -a claude-code

# Pi
npx skills add hatim-s/planloft --skill planloft-write-doc -a pi

Restart the agent after installation, then run planloft init. The skill requires the CLI on PATH; it does not install the CLI or publish documents.

Planloft also ships planloft-customise for explaining the document pipeline and building custom themes. Codex UI metadata labels the two skills planloft:write-doc and planloft:customise; Claude Code and other hosts use the portable planloft-write-doc and planloft-customise names shown by the installer.

For pnpm, Bun, project/global scope, CI, and agent-oriented verification, see Setup.

Quick start

planloft init
planloft hoist proposal.md
planloft preview

To render without storing:

planloft render proposal.md --theme editorial --out ./proposal-site

To publish only when you intend to create a public review link:

planloft publish proposal.md --ttl 30

Built-in themes

Planloft includes six authoring and presentation themes:

| Theme | Best for | |---|---| | minimal | Terse checklists and execution plans | | detailed | Thorough technical implementation plans | | editorial | Narrative proposals and recommendations | | decision | ADRs and durable decision records | | research | Evidence reviews and investigations | | briefing | Status updates and leadership reviews |

Select one with --theme <name>, document metadata, a project override, or the global configuration. See the theme catalog for authoring emphasis.

CLI

  • planloft render <input> — Render Markdown, JSON, or trusted HTML to a self-contained HTML artifact.
  • planloft hoist <input> — Normalize Markdown, JSON, or trusted HTML into the current project's store.
  • planloft publish <input> — Hoist, render, and publish a source to GitHub Pages.
  • planloft list — List stored documents grouped by project.
  • planloft preview [slug] — Build and open a local themed preview of a stored document.
  • planloft copy [slug] — Copy a stored document's raw source into the current repository.
  • planloft deploy [slug] — Build and publish a stored document to GitHub Pages.
  • planloft rm <slug> — Delete a stored document's source and index entry.
  • planloft resolve — Resolve the exact plan path, kind, theme, and authoring template.
  • planloft config — Open the versioned global configuration in $EDITOR, validate it, or print it.
  • planloft init — Create or explicitly reset default configuration and report GitHub readiness.

Run planloft help for workflows, defaults, examples, and write-safety markers, or planloft help <command> for one operation.

<input> may be a .md, .json, or .html file. Use - --format md|json|html for stdin. HTML input and embedded Markdown HTML require --trusted-html; use it only for content you control.

<!-- planloft:command-examples:start -->
planloft render proposal.md --theme editorial --out ./proposal-site
planloft hoist proposal.json
planloft publish proposal.md --ttl 30
<!-- planloft:command-examples:end -->

Publication safety

Published pages use hard-to-guess paths and noindex, but the backing GitHub Pages repository is public and enumerable. Keep sensitive documents local. Publishing and deploying are always explicit; stored documents remain local until copied or published.

Documentation

Planloft requires Node.js 18 or newer and is licensed under the MIT License.