GoJS – a JavaScript library for implementing interactive diagrams

Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone

GoJS is a JavaScript  library to build your own diagrams created by Northwoods Software, a sponsor of this site (thanks for your support!).  Today, we’re going to know more about Northwoods and its the GoJS library. 

Northwoods Software is a supplier of interactive diagramming components and class libraries across a variety of platforms.  Northwoods was founded in 1994 by a group of engineers who left Digital Equipment Corporation with a shared vision for providing superior graphical user interfaces. Since then, we have grown to serve companies worldwide. With 20 years of software development experience, our libraries GoXam, GoDiagram, and GoJS are built on what engineers value most: prompt and thorough developer-to-developer support, comprehensive documentation, responsive interactivity, and seamless integration into your application.

GoJS, launched in 2012, is a feature-rich JavaScript library for implementing interactive diagrams across modern web browsers. We provide over 150 interactive samples to help you get started with diagrams such as BPMN, flowchart, state chart, visual trees, Sankey, and data flow. We know a library is more valuable than just its code, and have spent considerable time writing introduction documents and a more detailed API than any competitor.

Example of a BPMN diagram modeled with GoJS

Example of a BPMN diagram in GoJS

Each time we target a new platform, we reimplement our libraries from scratch, rather than doing a minimal porting of an older library. As a result, GoJS is designed first as a HTML/JavaScript product, while still benefitting from our twenty years of past experience with diagramming libraries.

GoJS is pure Javascript, so users benefit from interactivity without plugins or dependencies on other frameworks or libraries. We continually test GoJS features to ensure compatibility with all modern browsers on both desktop and mobile, including touch devices. As a HTML5 Canvas solution, GoJS integrates with any JavaScript framework from JQuery to AngularJS, but can also stand on its own. We also offer SVG export of our diagrams for static display and printing needs.

New features in GoJS are typically added as a result of consumer demand. As our customer base has reached the thousands over the years, we’ve seen and can handle almost anything a user might want. When we encounter a request that other programmers could need, we often create a new sample demonstrating that feature. If the feature can easily be packaged for use by programmers, we insert the complete source code in the extensions directory. If the feature can be programmed but is application-specific, that will typically go into a sample and be published as part of the kit. If the feature cannot be implemented well on top of the GoJS API, we extend the API accordingly and implement it as part of the library. Through this process, we continually build and extend the capabilities of GoJS and respond to the needs of our customers. We build releases to suit customer demand, almost every other week.

Technical support is included with most purchases, as we understand that good software is based on communication and support. We have an active forum and offer comprehensive tutorials and introductory assistance. Support is always provided by the people who develop GoJS and 30 days of free support is included when you register with us.

Developer time is expensive. A carefully crafted and well-supported library is a rare opportunity in the development cycle to buy time, in this case adding thousands of hours of expertise to mature your project quickly and easily.

PageFlow diagram in GoJS

PageFlow diagram in GoJS

 

Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone
Comments
  1. Chris

Reply

Your email address will not be published. Required fields are marked *