open-index/open-npm huggingface dataset:
npm package: @mike-north/js-lib-semantic-release-config
Description: Mike's shared semantic release config for JS/TS libraries
Author: Mike North
Latest version: 1.0.1

# Mike's Semantic Release Config

[![Build Status](https://travis-ci.org/mike-north/js-lib-semantic-release-config.svg?branch=master)](https://travis-ci.org/mike-north/js-lib-semantic-release-config)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)
[![version](https://img.shields.io/npm/v/@mike-north/js-lib-semantic-release-config.svg)](https://www.npmjs.com/package/@mike-north/js-lib-semantic-release-config)

A [sharable semantic release config](https://semantic-release.gitbook.io/semantic-release/extending/shareable-configurations-list) for my JS & TS libraries. It automates

* Changelog generation
* NPM Publish
* Github Release

# Legal

(c) 2018 Mike North
npm package: @mike-north/metalsmith-drafts
Description: A metalsmith plugin to hide drafts.
Latest version: 1.0.1

# Metalsmith Drafts

[![npm version][npm-badge]][npm-url]
[![code style: prettier][prettier-badge]][prettier-url]
[![metalsmith: plugin][metalsmith-badge]][metalsmith-url]

[![Build Status][travis-badge]][travis-url]

A metalsmith plugin to hide drafts.

## Installation

    $ npm install metalsmith-drafts

## CLI Usage

  Install via npm and then add the `metalsmith-drafts` key to your `metalsmith.json` plugins, like so:

```json
{
  "plugins": {
    "metalsmith-drafts": true
  }
}
```

Then in your files YAML front-matter add `draft: true`.
In case you want to force all files to be set to `draft: true`, use the following plugin-option:

```json
{
  "plugins": {
    "metalsmith-drafts": {
		"default": true
	}
  }
}
```

## Javascript Usage

  Pass the plugin to `Metalsmith#use`, like so:

```js
var drafts = require('metalsmith-drafts');

metalsmith.use(drafts());
```

Then in your files YAML front-matter add `draft: true`.

### Default value for `draft`
If you want to define a default value for `draft` (in case they are not definied in the YAML front-matter, then use the plugin option `default`:

```js
var drafts = require('metalsmith-drafts');

metalsmith.use(drafts( {
	default: true
}));
```

## License

  MIT

[npm-badge]: https://img.shields.io/npm/v/metalsmith-drafts.svg
[npm-url]: https://www.npmjs.com/package/metalsmith-drafts
[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg
[prettier-url]: https://github.com/prettier/prettier
[metalsmith-badge]: https://img.shields.io/badge/metalsmith-plugin-green.svg?longCache=true
[metalsmith-url]: http://metalsmith.io

[travis-badge]: https://travis-ci.org/segmentio/metalsmith-drafts.svg?branch=master
[travis-url]: https://travis-ci.org/segmentio/metalsmith-drafts
npm package: @mike-north/metalsmith-markdown
Description: A Metalsmith plugin to convert markdown files.
Latest version: 1.3.2

# metalsmith-markdown

[![npm version][npm-badge]][npm-url]
[![code style: prettier][prettier-badge]][prettier-url]
[![metalsmith: core plugin][metalsmith-badge]][metalsmith-url]

[![Known Vulnerabilities][snyk-badge]][synk-url]

A Metalsmith plugin to convert markdown files.

## Installation

```bash
$ npm install metalsmith-markdown
```

## CLI Usage

  Install via npm and then add the `metalsmith-markdown` key to your `metalsmith.json` plugins with any [Marked](https://github.com/markedjs/marked) options you want, like so:

```json
{
  "plugins": {
    "metalsmith-markdown": {
      "pedantic": false,
      "gfm": true,
      "tables": true,
      "breaks": false,
      "sanitize": false,
      "smartLists": true,
      "smartypants": false,
      "xhtml": false
    }
  }
}
```

## Javascript Usage

  Pass `options` to the markdown plugin and pass it to Metalsmith with the `use` method:

```js
var markdown = require('metalsmith-markdown');
var highlighter = require('highlighter');

metalsmith.use(markdown({
  highlight: function(code) {
    return require('highlight.js').highlightAuto(code).value;
  },
  pedantic: false,
  gfm: true,
  tables: true,
  breaks: false,
  sanitize: false,
  smartLists: true,
  smartypants: false,
  xhtml: false
}));
```

## Custom Renderer

  `metalsmith-markdown` uses `marked`, so to create a custom renderer get an instance of `marked.Renderer()`

```js
var markdown = require('metalsmith-markdown');
var marked = require('marked');
var markdownRenderer = new marked.Renderer();

markdownRenderer.image = function (href, title, text) {
return `
  <figure>
    <img src="${href}" alt="${title}" title="${title}" />
    <figcaption>
      <p>${text}</p>
    </figcaption>
  </figure>`;
};

metalsmith.use(markdown({
  renderer: markdownRenderer,
  pedantic: false,
  gfm: true,
  tables: true,
  breaks: false,
  sanitize: false,
  smartLists: true,
  smartypants: false,
  xhtml: false
}));
```

## History

[History](./History.md#Latest)

## License

MIT

[npm-badge]: https://img.shields.io/npm/v/metalsmith-markdown.svg
[npm-url]: https://www.npmjs.com/package/metalsmith-markdown
[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?longCache=true
[prettier-url]: https://github.com/prettier/prettier
[metalsmith-badge]: https://img.shields.io/badge/metalsmith-core_plugin-green.svg?longCache=true
[metalsmith-url]: http://metalsmith.io
[snyk-badge]: https://snyk.io/test/github/segmentio/metalsmith-markdown/badge.svg?targetFile=package.json
[synk-url]: https://snyk.io/test/github/segmentio/metalsmith-markdown?targetFile=package.json
npm package: @mike-north/types
Description: TypeScript types/interfaces I often use for small libraries
Latest version: 1.4.1

# @mike-north/types

![Node.js CI (master)](https://github.com/mike-north/types/workflows/Node.js%20CI%20(master)/badge.svg)
[![Version](https://img.shields.io/npm/v/@mike-north/types.svg)](https://www.npmjs.com/package/@mike-north/types)

TypeScript `type`s, `interface`s and `class`es I often use.

## Types

- **[`Deferred<T>`](https://github.com/mike-north/types/blob/master/src/async.ts)** - An abstraction of "work in progress". An inverted `Promise<T>`
- **[`ConstructorArgs<T>`](https://github.com/mike-north/types/blob/master/src/classes.ts)** - Extract the arguments from a class constructor
- **[`AsyncMethodReturns<T>`](https://github.com/mike-north/types/blob/master/src/functions.ts)** - Promisify the return values of all methods on a type <T>
- **[`ExtractPropertyNamesOfType<T, S>`](https://github.com/mike-north/types/blob/master/src/objects.ts)** - Create a string literal type, representing the names of all properties on a type T whose values are assignable to S
- **[`RequiredProps<T, S>`](https://github.com/mike-north/types/blob/master/src/objects.ts)** - Make properties whose names are assignable to S on object T required
- **[`OptionalProps<T, S>`](https://github.com/mike-north/types/blob/master/src/objecst.ts)** - Make properties whose names are assignable to S on object T optional
- **[`OptionalPropertyNamesOf<T>`](https://github.com/mike-north/types/blob/master/src/objects.ts)** - Get the names of optional properties of T
- **[`RequiredPropertyNamesOf<T>`](https://github.com/mike-north/types/blob/master/src/objects.ts)** - Get the names of required properties of T

(c) 2018 Mike North