gitbook-plugin-uml

1.2.23 • Public • Published

gitbook-plugin-uml

Build Status Coverage Status NPM Version NPM Downloads

PlantUml Plugin for Honkit and GitBook.

This is a sample plugin for GitBook Honkit and is specially adapted for GitBook Honkit from PlantUML. Gitbook Honkit PlantUml plugin is used to select from markdown uml and converting it into a picture format svg.

Installation

Install honkit instead of gitbook-cli(deprecated).

Install JRE or JDK please. Ensure your system have java.

It will download plantuml jar file automatically, so in some country and region you must install it behind a proxy, or it will download fail.

Gitbook PlantUml plugin can be installed from NPM using:

npm install gitbook-plugin-uml

Add this plugin into book.json.

{
  "plugins": ["uml"]
}

FAQ

Important:

** Please ensure your system have java!!! Or this plugin may not work, and get Error: spawn java ENOENT

** It will download plantuml jar file automatically, so in some country and region you must install it behind a proxy, or it will download fail.

Features

  • Support HTML, PDF, EPUB output(make sure your gitbook support SVG)
  • Support ```flow code block quote
  • Multi code style support

Beautiful UML

ARCHIMATE

WAVEFORM

How to use it

To include a PlantUML diagram, just wrap your definition in a "uml" code block. For example:

UML

Text format uml:

```uml
@startuml

	Class Stage
	Class Timeout {
		+constructor:function(cfg)
		+timeout:function(ctx)
		+overdue:function(ctx)
		+stage: Stage
	}
 	Stage <|-- Timeout

@enduml
```

And what's more, puml and plantuml code block also OK.

```puml
@startuml

	Class Stage
	Class Timeout {
		+constructor:function(cfg)
		+timeout:function(ctx)
		+overdue:function(ctx)
		+stage: Stage
	}
 	Stage <|-- Timeout

@enduml
```

Also you can put in your book block as

{% uml %}
@startuml

	Class Stage
	Class Timeout {
		+constructor:function(cfg)
		+timeout:function(ctx)
		+overdue:function(ctx)
		+stage: Stage
	}
 	Stage &lt;|-- Timeout

@enduml
{% enduml %}

The block syntax also allows for a src attribute to import an external PlantUml file.

{% uml src="test.plantuml" %}{% enduml %}

Of course, you can also pass the parameters like this.

```puml { src="test.plantuml" }
```

Configuration

book.json add the uml options

Configure plugin in book.json.

"pluginsConfig": {
  "uml": {
    "format": "png",
    "nailgun": false
  }
}

Build and serve

This plugin only works in your local machine. You need to play with local gitbook (command-line tool) to pre-compile all uml images.

gitbook serve yourbook

or

gitbook build yourbook

Additional requirements

For Mac OS X users. Install graphviz package.

brew install graphviz

For Linux users, Install graphviz package.

sudo apt install graphviz
sudo yum install graphviz

Debian/Ubuntu users may need install default-jre prevent Error: spawn java ENOENT.

sudo apt-get install default-jre

Thanks

This plugin original from lyhcode/gitbook-plugin-plantuml

See also

These plugins are also available on honkit.

Plugin Description
gitbook-plugin-uml A plug-in that use plantuml to draw beautiful pictures
gitbook-plugin-wavedrom A plug-in that can draw waveforms and register tables
gitbook-plugin-sequence A plug-in that can draw sequence diagrams
gitbook-plugin-flow A plug-in that can draw flowchart.js diagrams
gitbook-plugin-echarts A plug-in that can draw various charts such as bar/pie

Package Sidebar

Install

npm i gitbook-plugin-uml

Weekly Downloads

240

Version

1.2.23

License

Apache-2.0

Unpacked Size

52.7 kB

Total Files

12

Last publish

Collaborators

  • vowstar