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

powerautodocs

v1.5.0

Published

Automated as-built documentation generator for Power Platform solutions

Readme

PowerAutoDocs

Automated as-built documentation generator for Power Platform solutions.

Reads unpacked solution XML directly from Git and publishes structured, cross-linked documentation to an Azure DevOps Wiki, a Word document, and/or a PDF — run locally or via an Azure DevOps pipeline.

npm license node

View architecture → · Documentation wiki →


What it documents

Covers the full stack of a Dataverse / Power Platform solution:

| Component | Output | | --- | --- | | Tables & Columns | Schema, types, required flags, custom vs standard | | Views | Filter conditions, linked entity joins, column lists | | Forms | Tab/section/field breakdown, compact or detailed layout | | Relationships | 1:N with direction, custom vs OOB, ER diagram | | Power Automate Flows | Trigger, nested action tree with branch markers, Mermaid flowchart | | Classic Workflows | XAML-based workflows with condition steps | | Business Rules | If/else branches, show/hide/required/clear actions | | Plugins | Assembly metadata, step registrations, entity/message/stage | | Web Resources (JS) | Function index, JSDoc, namespace detection, AI-generated per-function summaries | | Security Roles | Privilege matrix per entity (Create/Read/Write/Delete/Append/AppendTo) | | Environment Variables | Type, default value, secret store | | Connection References | Connector name, logical name | | Global Choices | Option sets with values and labels | | Email Templates | Subject, plain text body with field placeholders | | Model-Driven Apps | Entity list, app settings, role mappings |

Output formats

Three formats, configurable independently:

| Format | Description | | --- | --- | | ADO Wiki | Structured, cross-linked pages published to Azure DevOps Wiki via REST API. Includes Mermaid ER diagrams and per-flow flowcharts. | | Word (.docx) | Single self-contained document mirroring the wiki structure. A4, proportional column tables, auto-populated TOC. | | PDF | Same structure as Word, generated via pdfmake with no bundled font files. Local output only — not published to ADO Wiki. |

Mermaid diagrams are ADO Wiki only — omitted from Word and PDF.

Wiki structure

📁 [Solution Name]
├── 🏠 Overview               ← component counts + solutions table
├── 📁 Data Model
│   ├── 📊 ER Diagram         ← auto-generated Mermaid erDiagram
│   └── 📋 [Table] × N
│       ├── Columns
│       ├── Views
│       ├── Forms
│       ├── Relationships
│       └── Business Rules
├── 📁 Automation
│   ├── 🔄 Flows              ← summary + per-flow pages with Mermaid diagrams
│   ├── ⚡ Classic Workflows
│   └── 🔌 Plugin Assemblies
├── 📁 Custom Code
│   └── 📜 Web Resources (JS)
├── 📁 Security
│   └── 🔐 Security Roles
├── 📁 Integrations
│   ├── 🌍 Environment Variables
│   └── 🔗 Connection References
├── 🎛️ Global Choices
├── 📧 Email Templates
└── 📱 Model-Driven Apps

AI Enrichment (optional)

Generates short, plain-English summaries for the harder-to-skim parts of a solution — Power Automate Flows, Classic Workflows, Business Rules, Plugin Assemblies, and JS Web Resources — injected as a Summary section on each component's page. JS Web Resources also get a per-function one-liner replacing the almost always empty JSDoc "Description" column.

Off by default. Base documentation is fully deterministic whether or not it is enabled.

  • Cache-first — summaries are hashed and stored in a committed cache file. Unchanged components reuse their cached summary with no API call and no cost.
  • Pluggable provider — Anthropic (Claude) or Azure OpenAI, including managed identity.
  • Opt-in per component type — enable only the components you want summarised.

How it works

Unpacked Solution XML / JSON
        ↓
    Parsers (one per component type)
        ↓
    IR (typed TypeScript interfaces)
        ↓
    Enrichment (ERD, Mermaid diagrams, optional AI summaries)
        ↓
    Renderers (emit format-agnostic DocNode[])
        ↓
    MarkdownSerializer → ADO Wiki Publisher (REST API)
    DocxSerializer     → Word .docx file
    PdfSerializer      → PDF file

Parsers only produce IR. Renderers only consume IR. Neither knows about the other — swap or add output formats without touching parsing logic.


Quick start

# 1. Unpack your solution
pac solution unpack --zipfile MySolution.zip --folder ./unpacked/MySolution

# 2. Add a doc-gen.config.yml to your repo root (copy from samples/)

# 3. Run
npx powerautodocs@latest

PowerAutoDocs can be run locally or triggered automatically via an Azure DevOps pipeline. For full setup instructions see the documentation wiki:


Requirements

  • Node.js 22+ (Node 24 LTS recommended — it is what CI and the sample pipeline use)
  • Power Platform CLI (pac) for unpacking solutions
  • Azure DevOps Wiki for wiki output (optional if using Word/PDF only)

License

MIT — see LICENSE