All Projects → clientIO → Joint

clientIO / Joint

Licence: mpl-2.0
JavaScript diagramming library

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to Joint

Jsplumb
Visual connectivity for webapps
Stars: ✭ 6,758 (+92.59%)
Mutual labels:  svg, diagram, html5
X6
🚀 JavaScript diagramming library that uses SVG and HTML for rendering.
Stars: ✭ 2,686 (-23.45%)
Mutual labels:  svg, diagram, html5
Diagram Vue
A editable SVG-based diagram component for Vue
Stars: ✭ 86 (-97.55%)
Mutual labels:  svg, diagram
React Cassette Player
Simple ReactJS HTML5 audio player component built with SVG icons from The Noun Project.
Stars: ✭ 93 (-97.35%)
Mutual labels:  svg, html5
Butterfly
🦋Butterfly,A JavaScript/React/Vue2 Diagramming library which concentrate on flow layout field. (基于JavaScript/React/Vue2的流程图组件)
Stars: ✭ 2,343 (-33.23%)
Mutual labels:  svg, diagram
Flowchart.js
Draws simple SVG flow chart diagrams from textual representation of the diagram
Stars: ✭ 7,711 (+119.75%)
Mutual labels:  svg, diagram
Gatsby Embedder Excalidraw
🤴 Custom transformer to embed Excalidraw diagrams
Stars: ✭ 45 (-98.72%)
Mutual labels:  svg, diagram
Wavedrom
🌊 Digital timing diagram rendering engine
Stars: ✭ 1,668 (-52.47%)
Mutual labels:  svg, diagram
Alien.js
Future web pattern
Stars: ✭ 141 (-95.98%)
Mutual labels:  svg, html5
Wechart
Create all the [ch]arts by cax or three.js - Cax 和 three.js 创造一切图[表]
Stars: ✭ 152 (-95.67%)
Mutual labels:  svg, html5
Oshmi
SCADA HMI for substations and automation applications.
Stars: ✭ 180 (-94.87%)
Mutual labels:  svg, html5
Librecms
Free Open Source Content Management System, based on PHP, Bootstrap and jQuery.
Stars: ✭ 12 (-99.66%)
Mutual labels:  svg, html5
Chart.xkcd
Chart.xkcd is a chart library that plots “sketchy”, “cartoony” or “hand-drawn” styled charts.
Stars: ✭ 6,982 (+98.97%)
Mutual labels:  svg, html5
Deep Viz
A React component library, providing concise and beautiful diversity charts with Canvas, SVG, E-map, WebGL, Dom, based on data visualization experience and commercial data display practice.
Stars: ✭ 55 (-98.43%)
Mutual labels:  svg, diagram
Macsvg
macSVG - An open-source macOS app for designing HTML5 SVG (Scalable Vector Graphics) art and animation with a WebKit web view ➤➤➤
Stars: ✭ 789 (-77.51%)
Mutual labels:  svg, html5
Diagram Tools
A number of small tools for generating and manipulating diagrams, mostly based around Graphviz
Stars: ✭ 95 (-97.29%)
Mutual labels:  svg, diagram
Zrender
A lightweight graphic library providing 2d draw for Apache ECharts
Stars: ✭ 5,122 (+45.97%)
Mutual labels:  svg, html5
Alphatab
alphaTab is a cross platform music notation and guitar tablature rendering library.
Stars: ✭ 647 (-81.56%)
Mutual labels:  svg, html5
Perfcascade
Responsive, SVG based HAR waterfall viewer
Stars: ✭ 225 (-93.59%)
Mutual labels:  svg, diagram
Svgbob
Convert your ascii diagram scribbles into happy little SVG
Stars: ✭ 3,031 (-13.62%)
Mutual labels:  svg, diagram

JointJS - JavaScript diagramming library

Build Status Code Quality: Javascript Total Alerts

JointJS is a JavaScript diagramming library. It can be used to create either static diagrams or, and more importantly, fully interactive diagramming tools and application builders.

Please see http://jointjs.com for more information, demos and documentation.

Or check out our mind-map documentation.

Features

  • basic diagram elements (rect, circle, ellipse, text, image, path)
  • ready-to-use diagram elements of well-known diagrams (ERD, Org chart, FSA, UML, PN, DEVS, ...)
  • custom diagram elements based on SVG or programmatically rendered
  • interactive elements and links
  • connecting diagram elements with links or links with links
  • customizable links, their arrowheads and labels
  • links smoothing (bezier interpolation)
  • magnets (link connection points) can be placed basically anywhere
  • hierarchical diagrams
  • serialization/deserialization to/from JSON format
  • highly event driven - you can react on any event that happens inside the paper
  • zoom in/out
  • touch support
  • plugin awareness
  • MVC architecture
  • ... a lot more

Supported browsers

  • Latest Google Chrome (including mobile)
  • Latest Firefox
  • Latest Safari (including mobile)
  • Latest MSEdge
  • Latest Opera
  • IE 11
  • PhantomJS

Any problem with JointJS in the above browsers should be reported as a bug in JointJS.

Development Environment

If you want to work on JointJS locally, use the following guidelines to get started.

Dependencies

Make sure you have the following dependencies installed on your system:

Setup

Clone this git repository:

git clone https://github.com/clientIO/joint.git

Change into the joint directory:

cd joint

Install all NPM dependencies:

npm install

Generate build files from the source code:

grunt install

You are ready now to browse our demos:

cd demo

Tests

To run all tests:

grunt test

To run only the server-side tests:

grunt test:server

To run only the client-side tests:

grunt test:client

Lint

To check for linting errors in src and type directories:

npm run lint

To auto fix errors, run eslint for src and type directories:

npm run lint:fix

Code Coverage Reports

To output a code coverage report in HTML:

grunt test:coverage

To output a code coverage report in lcov format:

grunt test:coverage --reporter="lcov"

The output for all unit tests will be saved in the coverage directory.

Building Distribution Files

The dist directory contains pre-built distribution files. To re-build them, run the following:

grunt dist

Documentation

The source for the JointJS documentation (plus geometry and Vectorizer libraries) are included in this repository; see the docs directory. The documentation can be built into stand-alone HTML documents like this:

grunt build:docs

The output of the above command can be found at build/docs.

License

JointJS library is licensed under the Mozilla Public License, v. 2.0. Please see the LICENSE file for the full license.

Copyright (c) 2013 client IO

Contributors

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].