update-sections

Easily prepend, append, inject or replace 'sections' in a markdown string.
Install
Install with npm:
$ npm i update-sections --save
Usage
var fs = require('fs');
var update = require('update-sections');
var readme = fs.readFileSync('README.md', 'utf8');
var snippet = fs.readFileSync('contributing.md', 'utf8');
var str = update(readme, 'License', snippet, 'before');
API
Re-write a layout with "sections" defined in a declarative configuration. The sections property must be an array of section object, and each object must have all params defined: contents, heading and placement.
Supported placement values are:
inner (or aliases: inside and between): inject the content directly after the heading, before the content of a section
before (or alias prepend): inject the content before the specified section's heading
after (or alias append): inject the content after the specified section's heading
Params
contents {String}: the string with sections to update
heading {String}: the heading of the existing section to match for placement
value {String}: the "snippet" to inject for the section
placement {String}: where to place the new content, relative to the specified heading.
returns {String}
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
Generate readme and API documentation with verb:
$ npm i -d && npm run docs
Or, if verb is installed globally:
$ verb
Running tests
Install dev dependencies:
$ npm i -d && npm test
Author
Jon Schlinkert
License
Copyright © 2016 Jon Schlinkert
Released under the MIT license.
This file was generated by verb, v0.9.0, on February 21, 2016.