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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@mantlebee/docsify-glossary

v2.0.3

Published

A simple glossary plugin for docsify

Readme

docsify-glossary

Docsify plugin for auto replacing terms with link to one or more glossaries.

Fork of TheGreenToaster/docsify-glossary, this package aims to improve the previous plugin, adding a configuration section and more flexibility.

Quick Start

Install

  1. Insert script into docsify document
<script src="//unpkg.com/@mantlebee/docsify-glossary/dist/docsify-glossary.min.js"></script>
  1. Create a _glossary.md file in the root directory
  2. Populate the _glossary.md file with terms.

Usage

  • Terms must be predicated with "## " (without quotes) to get recognized by the glossary
  • Terms are replaced with links in the order that they appear in the glossary file.

See the examples/default example, running

npm run example:default

Example: with default options

File _glossary.md

## Main User

Primary user of the platform

File user-example.md

The Main user is responsible for ...

Advanced Usage

The configuration object allows to change the default behaviour.

window.$docsify.glossary = {
  filePaths: { "/": "/_glossary.md" },
  caseSensitive: false,
  glossaryTermRegex: /^## .{1,}/,
  convertGlossaryTermRegexMatch: (match) => match.replace("## ", ""),
  matchDocumentationTerm: (term, slug) => term,
};

Change how the plugin find and replace terms

The default behaviour is to find the glossary term as is, but is possible to use a different pattern, changing the matchDocumentationTerm option.

Example: different term match

Configuration

window.$docsify = {
   ...
    glossary: {
        matchDocumentationTerm: term = `{${term}}`
    }
}

File _glossary.md

## Main User

Primary user of the platform

File user-example.md

The {Main User} is responsible for ...

It is possible to use the slug too.

Example: slug as term match

Configuration

window.$docsify = {
   ...
    glossary: {
        matchDocumentationTerm: (term, slug) = slug
    }
}

File _glossary.md

## Main User

Primary user of the platform

File user-example.md

The main-user is responsible for ...

Use different glossary files

If your documentation involves different areas that has to be separated, multiple glossary files can be adopted.

Use the following folder structure as reference:

doc/
    users/
        groups/
            ...
        permissions/
            ...
        ...
        _glossary.md
    licensing/
        ...
        _glossary.md

Configure the plugin to assign a specific glossary file using the route to match the correct one.

Example: multiple glossaries

Configuration

window.$docsify = {
   ...
    glossary: {
        filePaths: {
            "/users": "/users/_glossary.md",
            "/licensing": "/licensing/_glossary.md"
        }
    }
}

When the page /users/permissions/index.md is loaded (and all other routes starting with /users) links to the glossary will redirect to the /users/_glossary.md page. Same behaviour for routes starting with /licensing and the /licensing/_glossary.md page.