punkave / grunt-dox

Grunt Plugin for generating Dox
MIT License
40 stars 13 forks source link

grunt-dox

Dox grunt plugin to automatically generate documentation for you project. Currently generates HTML output using dox-foundaiton

Getting Started

This plugin requires Grunt ~0.4.0

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-dox --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-dox');

Documentation

Inside of your grunt file, add:

dox: {
  options: {
    title: "My Library's awesome documentation"
  },
  files: {
    src: ['js/lib/'],
    dest: 'docs'
  }
},

This will run all of your files in lib through dox and dox-foundation and put the output in docs.

Since the grunt-dox task is a multi task, you can create several tasks for dox:

dox: {
  libdocs :{
    files: {
      src: ['js/lib/'],
      dest: 'docs'
    }
  },
  sourcedocs :{
    files: {
      src: ['js/src/'],
      dest: 'docs'
    }
  }
},

To ignore certain directories, or to override the default ignore list, simpy add ignore and an array of paths. Note that this is the same as passing the --ignore parameter as described on the dox-foundation docs:

--ignore <directories>  Comma seperated list of directories to ignore. Overrides default of test, public, static, views, templates

Usage:

dox: {
  options: {
    title: 'Ignore Nothing for my awesome documentation'
  },
  files: {
    ignore: ['test'],
    src: ['js/src/'],
    dest: 'docs'
  }
}

Note: This will completely delete and recreate the docs folder

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [grunt][grunt].

Release History

License

Copyright (c) 2012 P'unk Ave Licensed under the MIT license.