@kgryte/readme

2.0.0 • Public • Published

README

NPM version Build Status Coverage Status Dependencies

Creates a README.md file.

Installation

$ npm install @kgryte/readme

Usage

var cp = require( '@kgryte/readme' );

cp( dest[, opts ][, clbk ] )

Asynchronously create a README.md file in a specified destination directory.

cp( 'path/to/a/directory', onCreate );

function onCreate( error ) {
	if ( error ) {
		throw error;
	}
	console.log( 'Success!' );
}

The function accepts the following options:

  • template: README.md template name. Default: 'node_module'.
  • title: title. Default: ''.
  • desc: description. Default: ''.
  • repo: Github repository.
  • license: license. Default: 'MIT'.
  • holder: copyright holder.
  • sections: sections. Default: (template dependent).

By default, a node_module template is used. To specify a different README.md template, set the template option.

cp( 'path/to/a/directory', {
	'template': 'node_module'
});

To specify README.md fields, set the corresponding options.

cp( 'path/to/a/directory', {
	'title': 'beep',
	'holder': 'Jane Doe',
	'repo': 'janedoe/beep'
});

cp.sync( dest[, opts] )

Synchronously create a README.md file in a specified destination directory.

cp.sync( 'path/to/a/directory' );

The function accepts the same options as the asynchronous version.

Notes

  • Supported templates may be found in the ./lib directory and are named according to the directory name.

  • The repository is assumed to be a Github repository. Thus, only the owner/organization and repository names are needed; e.g.,

    kgryte/readme
    

Examples

var mkdirp = require( 'mkdirp' ),
	path = require( 'path' ),
	cp = require( '@kgryte/readme' );

var dirpath = path.resolve( __dirname, '../build/' + new Date().getTime() );

mkdirp.sync( dirpath );
cp.sync( dirpath, {
	'template': 'node_module',
	'title': 'beep',
	'desc': 'Beep boop.',
	'repo': 'janedoe/beep',
	'license': 'MIT',
	'holder': 'Jane Doe',
	'sections': [
		'badges',
		'installation',
		'usage',
		'notes',
		'examples',
		'cli',
		'cli.installation',
		'cli.usage',
		'cli.notes',
		'cli.examples',
		'tests',
		'tests.unit',
		'tests.coverage',
		'tests.browsers',
		'license'
	]
});

To run the example code from the top-level application directory,

$ node ./examples/index.js

CLI

Installation

To use the module as a general utility, install the module globally

$ npm install -g @kgryte/readme

Usage

Usage: readme [options] [destination]

Options:

  -h,    --help                Print this message.
  -V,    --version             Print the package version.
  -tmpl  --template [name]     Template name. Default: 'node_module'.
         --title [title]       Title. Default: ''.
  -desc  --description [desc]  Description. Default: ''.
         --repo [repo]         Repository. Default: ''.
         --license [name]      License. Default: 'MIT'.
         --holder [holder]     Copyright author.
         --sections [sections] Sections.

Examples

$ cd ~/my/project/directory
$ readme
# => creates a README.md file in the current working directory

To specify a destination other than the current working directory, provide a destination.

$ readme ./../some/other/directory

Tests

Unit

Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:

$ make test

All new feature development should have corresponding unit tests to validate correct functionality.

Test Coverage

This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:

$ make test-cov

Istanbul creates a ./reports/coverage directory. To access an HTML version of the report,

$ make view-cov

License

MIT license.

Copyright

Copyright © 2015. Athan Reines.

Package Sidebar

Install

npm i @kgryte/readme

Weekly Downloads

2

Version

2.0.0

License

MIT

Last publish

Collaborators

  • kgryte