npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@webevt/jsplumb

v1.7.10

Published

Visual connectivity for webapps

Downloads

9

Readme

jsPlumb

jsPlumb provides a means for a developer to visually connect elements on their web pages. It uses SVG or Canvas in modern browsers, and VML on IE 8 and below. The latest version is 1.7.10; this will be the final version (apart from bugfix releases in 1.7.x) to support IE8. The next major release will be 2.0.0, and this will work only in modern browsers that support SVG.

Note It is recommended that you use vanilla jsPlumb wherever possible: it's faster than the jQuery version, it offers more features (multiple element dragging, multiple scopes), and since the event handling and drag/drop code are also projects managed by jsPlumb, you're more likely to get a feature request for those sorts of things to happen. Plus the jQuery version may well disappear at some stage in the future.

If you're new to jsPlumb, please do take the time to read the documentation. There are a few integration issues that you should be aware of: z-index needs special attention, for example.

Project Structure

At any time there is a built version in the dist directory, which contains the concatenated and minified files, as well as a full set of demos and tests, and there is a version under development in src. If taking something that is working and adapting it for your needs is what you want to do, use the files in the dist directory. If you need to work directly with the version in development - maybe there's a bug fix you need or whatever - you need the files in the src directory.

Note that the demos in the demos directory are always pointing at the current development version, and therefore have a long list of imports.

Issues

jsPlumb uses GitHub's issue tracker for enhancements and bugs. But please do check the Google Group before posting an issue, particularly if you're just asking a question.

Requirements

  • Vanilla

Vanilla jsPlumb (dom.jsPlumb-x.x.x.js) has no external dependencies and offers support for touch devices out of the box.

  • jQuery:

jsPlumb requires jQuery 1.3.x or later; it has been tested on 1.3.2, 1.4.x, 1.5.x, 1.6.x, 1.7.x, 1.8.x and 1.9.x. To support dragging, you will need jQueryUI 1.7.x or 1.8.x. NOTE: jQuery 1.8.x only works with jQueryUI 1.8.22 and above.

There is a bug in jQuery 1.6.x and 1.7.x's SVG support for IE9 - see this issue. It means that mouse events do not get posted. There is another discussion of the issue here. This issue is fixed in jQuery 1.8.

jsPlumb in action

Links to various demonstrations can be found here.

Documentation

Documentation can be found in the doc folder of the project, or you can view it online here.

API documentation is in the apidoc folder of the project, and online here.

jsPlumb Helper Projects

  • Bezier curve functions:

https://github.com/sporritt/jsBezier

  • Simple geometry functions:

https://github.com/jsplumb/biltong

  • Drag+drop:

https://github.com/jsplumb/katavorio

  • Events:

https://github.com/jsplumb/mottle

Tests

There is a full suite of unit tests checked in to the test and dist/test directories.

Twitter

The Twitter account for this project is jsplumblib

..but of course things fall through the cracks with Twitter. So maybe use this instead:

Mailing List

Sign up for the jsPlumb announcements mailing list here.

License

All 1.x.x versions of jsPlumb are dual-licensed under both MIT and GPLv2.