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 🙏

© 2024 – Pkg Stats / Ryan Hefner

wicked

v0.3.1

Published

Generates github wiki compatible API documentation from your project's jsdocs and adds them to your wiki.

Downloads

8

Readme

wicked build status

A tool that generates github wiki compatible API documentation from your project's jsdocs and adds them to your wiki.

wicked.wiki

That is wicked!

Installation

npm install -g wicked

Usage

Steps

  1. Create wiki by checking wiki in your project Features settings
  2. Initialize wiki by accessing the wiki (the book icon in the navbar) which links to http://github.com/yourname/yourproject/wiki
  3. Install wicked npm install -g wicked
  4. Go to the root of your github project on your machine
  5. Run wicked

Steps 4 - 5 can be repeated everytime you want to re-generate API docs for your project.

wicked does not overwrite other pages you created in your wiki so keep running wicked all you need.

More specifically wicked only removes old *.API.md files from your wiki and updates the links _Sidebar.md without affecting any other links in the sidebar.

See an example of API docs added by wicked in its own wiki.

Command Line Options

usage: wicked <wicked-options> -- <jsdoc-options>

  Generates wiki API docs for the gihub project in the current directory.

  Both options are optional, jsdoc-options get passed to [jsdoc](http://usejsdoc.org/about-commandline.html).

  Note: overriding the jsdoc destination (-d, --destination) is not possible since wicked will write files to a temp dir

OPTIONS:

  --noclean       don't remove the temp directory into which wiki is checked out when finished

  --nocommit      don't commit the updated wiki automatically nor remove the temp directory

  -t, --toc       causes wicked to generate a table of contents on top of each wiki page

  -l, --loglevel  level at which to log: silly|verbose|info|warn|error|silent -- default: info
  
  -h, --help      Print this help message.


EXAMPLES:
  
  Generate with default options:
    
    wicked

  Generate and include table of contents:
    
    wicked --toc

  Override [jsdocconf.json](http://usejsdoc.org/about-configuring-jsdoc.html):

    wicked -- --configure ./myconf.json

  Override loglevel and jsoc configuration and don't remove temp directory:

    wicked  --loglevel silly --noclean -- --configure ./myconf.json

Helpful links and techniques

Since wicked is using jsdoc under the hood, it is helpful to review its documentation. I highly recommend this page explaining how to specify @param types among other useful specs.

In order to avoid all functions being attached to the global namespace resulting in one API page per function, I namespaced functions in wicked with @namespace and @memberof working together. As an example the Internal namespace is defined here and used by all the lib functions like this one.

Feel free to study the commenting style used in wicked itself and compare with the wiki pages it produced.

In order to make your wicked API pages appear properly styled, please install the chrome extension or bookmarklet.

API

generated with docme

License

MIT