UNPKG

grunt-readme

Version:

Grunt plugin for generating a README from templates, including an optional table of contents. No Gruntfile config is necessary, just choose a starter template and you'll be ready to go.

109 lines (80 loc) 3.42 kB
# grunt-readme [![NPM version](https://badge.fury.io/js/grunt-readme.png)](http://badge.fury.io/js/grunt-readme) > Grunt plugin for generating a README from templates, including an optional table of contents. No Gruntfile config is necessary, just choose a starter template and you'll be ready to go. ## Getting Started _If you haven't used [grunt][] before, be sure to check out the [Getting Started][] guide._ From the same directory as your project's [Gruntfile][Getting Started] and [package.json][], install this plugin with the following command: ```bash npm install grunt-readme --save-dev ``` Once that's done, add this line to your project's Gruntfile: ```js grunt.loadNpmTasks('grunt-readme'); ``` If the plugin has been installed correctly, running `grunt --help` at the command line should list the newly-installed plugin's task or tasks. In addition, the plugin should be listed in package.json as a `devDependency`, which ensures that it will be installed whenever the `npm install` command is run. [grunt]: http://gruntjs.com/ [Getting Started]: https://github.com/gruntjs/grunt/blob/devel/docs/getting_started.md [package.json]: https://npmjs.org/doc/json.html ## The "readme" task ### Overview In your project's Gruntfile, add a section named `readme` to the data object passed into `grunt.initConfig()`. ```js grunt.initConfig({ readme: { options: { // Task-specific options go here. }, target: { // Target-specific file lists and/or options go here. } } }) ``` ### Options #### options.separator Type: `String` Default value: `', '` A string value that is used to do something with whatever. #### options.punctuation Type: `String` Default value: `'.'` A string value that is used to do something else with whatever else. ### Usage Examples #### Default Options In this example, the default options are used to do something with whatever. So if the `testing` file has the content `Testing` and the `123` file had the content `1 2 3`, the generated result would be `Testing, 1 2 3.` ```js grunt.initConfig({ readme: { options: {}, files: { 'dest/default_options': ['src/testing', 'src/123'] } } }) ``` #### Custom Options In this example, custom options are used to do something else with whatever else. So if the `testing` file has the content `Testing` and the `123` file had the content `1 2 3`, the generated result in this case would be `Testing: 1 2 3 !!!` ```js grunt.initConfig({ readme: { options: { separator: ': ', punctuation: ' !!!', }, files: { 'dest/default_options': ['src/testing', 'src/123'] } } }) ``` ## 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][]. ## Author + [github/https://github.com/jonschlinkert](https://github.com/jonschlinkert) + [twitter/https://github.com/jonschlinkert](http://twitter.com/https://github.com/jonschlinkert) ## Release History * 2013   v0.1.0   First commit ## License Copyright (c) 2013 grunt-readme Licensed under the [MIT license](LICENSE-MIT). *** _This file was generated by [grunt-readme](https://github.com/assemble/grunt-readme) on Thursday, November 21, 2013._