根据文本生成UML时序图:JS-Sequence-Diagrams

jopen 9年前

根据简单的文本生成UML时序图
https://bramp.github.io/js-sequence-diagrams/

by Andrew Brampton 2012-2015

示例

We turn

Alice->Bob: Hello Bob, how are you?  Note right of Bob: Bob thinks  Bob-->Alice: I am good thanks!

into

Sample generated UML diagram

环境要求

You will need Raphaël, underscore.js (or lodash), and optionally jQuery.

Installation

bower

Just runbower install bramp/js-sequence-diagramsand include the scripts below:

<script src="{{ bower directory }}/raphael/raphael-min.js"></script>  <script src="{{ bower directory }}/underscore/underscore-min.js"></script>  <script src="{{ bower directory }}/js-sequence-diagrams/build/sequence-diagram-min.js"></script>

Manually

You can download the dependencies (see requirements above) and include them on your page like so:

<script src="underscore-min.js"></script>  <script src="raphael-min.js"></script>  <script src="sequence-diagram-min.js"></script>

Usage

You can use the Diagram class like:

<div id="diagram">Diagram will be placed here</div>  <script>     var diagram = Diagram.parse("A->B: Does something");    diagram.drawSVG('diagram');  </script>

or use jQuery to do all the work:

<div class="diagram">A->B: Message</div>  <script>  $(".diagram").sequenceDiagram({theme: 'hand'});  </script>

Build requirements

The build is managed by a Makefile, and uses various tools available from npm. Thus bothmakeand npm are required, and can easily be installed on any Linux or Mac machine.

make

The Makefile will use npm to install all the dev dependencies, build, and test.

Testing

We use qunit for testing. It can be ran from the command line, or via a browser. The command line actually tests multiple permutations of lodash, Underscore, and with and without minification.

make test ...  Global summary:  ┌───────┬───────┬────────────┬────────┬────────┬─────────┐  │ Files │ Tests │ Assertions │ Failed │ Passed │ Runtime │  ├───────┼───────┼────────────┼────────┼────────┼─────────┤  │ 1     │ 13    │ 231        │ 0      │ 231    │ 250     │  └───────┴───────┴────────────┴────────┴────────┴─────────┘

ormakeand then open test/qunit.html in a browser. Finally a simple playground is available at test/test.html.

How to release

  • Make sure all changes checked in
  • Bump version in src/main.js and bower.json
  • make clean
  • make
  • git add -f src/main.js bower.json build/sequence-diagram-min.js build/sequence-diagram-min.js.map
  • git commit -m "Released version 1.x.x"
  • git push origin master
  • git tag -a v1.x.x -m v1.x.x
  • git push origin v1.x.x

项目主页:http://www.open-open.com/lib/view/home/1444551870994