Skip to main content
Demonstration:

Image Processor

< Back to demo list

The source code for this application - and several others - is available on Github here. If you haven't got a license for the Toolkit, we offer 30 day evaluations.

Image Processor
What is this?

This app implements a client side image processor using HTML canvas for the various filters and transformations.

How to use the demo?
  • You need one or more `Source` nodes to start. Either drag a source node onto the canvas, then use the uploader on it, or drag an image into it, or just drag an image onto the canvas
  • Drag on filters/transformations as you need, and drag edges to connect them. Only matching datatypes can be connected (you cannot, for instance, connect an `amount` from a number output to an `image` on a display node).
  • Filters and transformations can have values injected into them, which may be the result of some other computation or of the properties of some image, but you can also set values directly on filters and transformations. Where you have values set but also injected, the injected values take precedence.
  • Drag on a `Display` node to view the output of some chain.
  • You can download images directly from a `Display` node.
How does the demo work?

We'll be posting a detailed description of how this demo works at some stage soon.

Further reading

The code snippets in this post are available in an MIT licensed library available on Github at https://github.com/jsplumb/canvas-image-processing and as a package on NPM.

You can read more about image processing on our site here

Fork me on Github
Flowchart Builder
Flowchart builder application - JsPlumb, leading alternative to JointJS and GoJS
Fully featured flowchart builder for you to use as a base for your own apps. Includes support for custom shapes, edge routing, node resizing, and SVG/PNG/JPG export. Angular, Vue 2, Vue 3, React and Svelte versions available.
Schema Builder
Database schema builder application - JsPlumb, leading alternative to JointJS and GoJS
Includes support for tables, views, multiple columns types, and column relationships. Easily extensible. Angular, Vue 2, Vue 3 and React versions available.
Chatbot Builder
Chatbot builder application - JsPlumb, leading alternative to JointJS and GoJS
Use the Toolkit to build a chatbot flow, with actions, messages, input and choices. Angular, Vue 2, Vue 3, React and Svelte versions available.
Org chart
Org chart application - JsPlumb, leading alternative to JointJS and GoJS
The Toolkit makes it simple to build interactive org charts. This starter app uses the classic org chart layout and provides an inspector from which the user can navigate around. Angular, Vue 2, Vue 3 and React versions available.
Mindmap Builder
Mindmap builder application - JsPlumb, leading alternative to JointJS and GoJS
Simple mindmap builder, highlighting several advanced features the Toolkit offers, such as custom layouts, parsers and exporters
Nested Groups
Element grouping demonstration - JsPlumb, leading alternative to JointJS and GoJS
Learn about how the Toolkit lets you work with groups nested to an arbitrary level, with full drag and drop support.
Path Tracing
Path tracing demonstration - JsPlumb, leading alternative to JointJS and GoJS
Leverage the Toolkit's underlying Directed Graph to visualize paths between elements.
Hello World
Hello world demonstration - JsPlumb, leading alternative to JointJS and GoJS
This app is designed to give you a basic starter app from which you can build your own, without any of the bells and whistles included in our other starter apps.
Image Processor
Image processor application - JsPlumb, leading alternative to JointJS and GoJS
Fully featured image processor using HTML canvas for you to use as a base for your own apps. Angular, Vue 2, Vue 3, React and Svelte versions available.
Neighbourhood Views

Neighbour views dynamic selections demonstration - JsPlumb, leading alternative to GoJS and JointJS

Use popups and the Toolkit's ability to dynamically render selections to provide neighbourhood contextual information for some selected element
Active Filtering

Active filtering demonstration - JsPlumb - Angular, React, Vue, Svelte diagramming library

Filter drag targets as your users start to drag new connections using the ActiveFiltering plugin.
Segmented Connectors

CAD Drawing tools demonstration - JsPlumb, leading alternative to GoJS and JointJS

An adaptable connector that consists of a series of segments, with the option to smooth to a set of Bezier splines
Hierarchy Layout

Org chart layout demonstration - JsPlumb, leading alternative to GoJS and JointJS

The classic organization chart layout, with support for horizontal/vertical axis and a number of different alignment options
Layouts

Force directed layout demonstration, org chart layout demonstration - JsPlumb - JavaScript and Typescript diagramming library that fuels exceptional UIs

A playground for testing the various layouts that the Toolkit offers - Hierarchy, Force Directed, Circular, Balloon and more.
Collapsible Hierarchy

Collapsible hierarchy Italic language family demonstration - JsPlumb - Angular, React, Vue, Svelte diagramming library

Use the Toolkit's ability to render a dynamically collapsible and expandable hierarchy.
Nested instances

Nested instances desktop example - JsPlumb - Angular, React, Vue, Svelte diagramming library

Use the Toolkit's ability to nest instances to implement a simple desktop