gitbook plugin [updated pkgs] https://github.com/windhamdavid/gitbook-plugin-prism-dw

Samy Pessé 2fb4f3e323 Merge pull request #12 from timelyportfolio/patch-1 10 years ago
book 5133bbe087 Adapt to new js interface 10 years ago
.gitignore 828f3df964 Initial commit 10 years ago
LICENSE 828f3df964 Initial commit 10 years ago
README.md 3344fd8687 fix misspelling of "fucntion" in 73 of Readme.md 10 years ago
index.js efeda1262b fix page hook description 10 years ago
package.json 25719d8577 Fix repo urls 10 years ago

README.md

GitBook Sample Plugin

This is a sample plugin for GitBook.

Install it using: $ npm install gitbook-plugin

How GitBook plugin works?

A plugin for GitBook is a node package that can be published on NPM.

package.json

name

The package name should begin with gitbook-plugin-. And if your plugin is a theme, it should begin with gitbook-theme-.

Examples: gitbook-plugin-mixpanel, gitbook-plugin-googleanalytics, gitbook-theme-dark

engine

The package.json should contain a engine field using the standard norm.

"engines": {
    "gitbook": "*"
}

For example if you want your plugin to supports only GitBook version supperior to 0.3.1:

"engines": {
    "gitbook": ">=0.3.1"
}

entry point

The plugin entry point should return an object with some metadata.

"book"

Type: Object Default value: {}

"book.assets"

Type: String Default value: null

Path to the assets folder to copy

"book.js"

Type: Array Default value: []

List of javascript file to add to the html pages (relative to the assets folder).

"book.css"

Type: Array Default value: []

List of css file to add to the html pages (relative to the assets folder).

"book.html"

Type: Object Default value: {}

Map of position -> code, html snippets to add to each page. The code could be a function.

"book.templates"

Type: Object Default value: {}

Templates to override default templates, only use this option if you want to change entirely how the book is rendered.

This object is a map: "name" -> "file", with names:

  • "site": page for a file from the site format
  • "page": page for the page format

"hooks"

Type: Object Default value: {}

Map of "name" -> Function that needs to be called during build process. With names:

  • "init": just after initialization, before generation
  • "finish": after generation and everything is finished

Each hook can return a promise.