Nuclear Pumpkin Mayhem

    markdown-magic-package-json

    2.0.2 • Public • Published

    markdown-magic-package-json

    Build Status Build status Coverage Status XO code style

    Add the package.json properties to markdown files via markdown-magic

    Install

    npm i markdown-magic markdown-magic-package-json --save-dev

    Adding the plugin

    See this example for usage.

    'use strict';
    
    const path = require('path');
    const markdownMagic = require('markdown-magic');
    
    const config = {
    	transforms: {
    		PKGJSON: require('markdown-magic-package-json')
    	}
    };
    
    const markdownPath = path.join(__dirname, 'README.md');
    markdownMagic(markdownPath, config);

    Options

    • template - string with placeholders like Template literals. These placeholders are indicated by the dollar sign and curly braces (${property}). For example, if we want to retrieve the name property in the package.json, we can write this: ${name}. See more examples in the section Usage in markdown.
    • pkg (package.json in ancestor's dir by default) - package.json path. If the path is incorrect, the plugin find package.json in ancestor's dir
    • UnknownTxt (undefined by default) - string to add if the prop is unknown

    WARNING: The following options has been deprecated in favor of template. They are removed from version 2.0.0 and later. See the guide to use template instead :

    • prop - any property in package.json (like name, version, scripts.test, ...)
    • before (empty by default) - string to add before prop
    • after (empty by default) - string to add after prop

    Usage in markdown

    Basic

    Here is a first example to display the name property inside package.json:

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=${name}) -->
    markdown-magic-package-json
    <!-- AUTO-GENERATED-CONTENT:END -->

    With most options

    Here is an example with most options:

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=### ${name} is very useful !&pkg=tests) -->
    ### markdown-magic-package-json is very useful !
    <!-- AUTO-GENERATED-CONTENT:END -->

    Unknown property

    In this example, the property does not exist in package.json:

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=${foo}) -->
    undefined
    <!-- AUTO-GENERATED-CONTENT:END -->

    Please note in this case the value unknown is replaced by undefined. You can change undefined by a value of your choice using the option unknownTxt as below:

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=${foo}&unknownTxt=##TODO##) -->
    ##TODO##
    <!-- AUTO-GENERATED-CONTENT:END -->

    Deep property

    To retrieve a deep property (for example repository.type):

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=${repository.type}) -->
    git
    <!-- AUTO-GENERATED-CONTENT:END -->

    With news lines and tabulations

    To the layout, use characters for new line (\n) or tabulation (\t):

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=# Hello World\n\nThe package: ${name}\n\n\tIt is useful!\n\nVery useful!!!) -->
    # Hello World
    
    The package: markdown-magic-package-json
    
    	It is useful!
    
    Very useful!!!
    <!-- AUTO-GENERATED-CONTENT:END -->

    Repeated properties

    You can repeat the same property multiple times:

    <!-- AUTO-GENERATED-CONTENT:START (PKGJSON:template=Name: ${name}\nLicense: ${license}\n${name} has the ${license} license) -->
    Name: markdown-magic-package-json
    License: MIT
    markdown-magic-package-json has the MIT license
    <!-- AUTO-GENERATED-CONTENT:END -->

    License

    MIT © forresst

    Install

    npm i markdown-magic-package-json

    DownloadsWeekly Downloads

    595

    Version

    2.0.2

    License

    MIT

    Unpacked Size

    22.4 kB

    Total Files

    5

    Last publish

    Collaborators

    • forresst17