0.0.2 • Public • Published

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.



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


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.


Type: Object Default value: {}


Type: String Default value: null

Path to the assets folder to copy


Type: Array Default value: []

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


Type: Array Default value: []

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


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


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 everuthing is finished

Each hook can return a promise.




npm i gitbook-plugin

DownloadsWeekly Downloads





Apache 2

Last publish


  • samypesse