Doxi

Document your API from code


Doxi is intended to help you build a great single page documentation for your API. This page is the result of running Doxi against it's own source code.

Doxi was created for the following use case: you have a closed source project with public API. You don't want to maintain a separate markdown/html documentation, as well you do not want ot disclose your code, file structure and module names. Here Doxi comes in handy.

  • Document your API with JSDoc right inside your code.

  • Join your JSDoc comments from all your files into logical groups.

  • Use markdown.

  • Be awesome!
    Fork me on GitHub

Custom tags

Doxi introduces some custom JSDoc tags so you could manage how the documentation will be rendered.

@group

Join comments from separate files into a single logical group.
Check the sidebar - "Custom tags", "Installation", "Options" and "Usage instructions" are all groups.

@grouptext

Used to create a description for the group. You can use markdown, it will be shown right under group heading.

@introduction

You can see the output of @introduction tag on top of this page. Use it to introduce your product, write a welcome text etc.
@introduction supports markdown and html.
It is advised to have only one @inroduction, however multiple @introduction tags will be joined in file name order.

@onelinervar foo = new Bar(1, "hello");

Used to display a pretty one-liner usage example near name. You can see the result just above these lines.

Installation

npm install --save-dev doxi

Options

configuration

Name Type Description
template string Path to your custom template
heading string Label to display in top left corner
title string Page title
stylesheets Array List of paths to stylesheets you want to be included

Usage instructions

For now Doxi can be used only with gulp.

Example

    gulp.task('default', function() {
        gulp.src('./lib/doxi.js')
            .pipe(doxi('index.html', {template: './templates/index.jade'}))
            .pipe(gulp.dest('./'));
    });