Audience
JavaScript and TypeScript developers looking for diagramming libraries
About GoJS
GoJS is a JavaScript and TypeScript library for building interactive diagrams and graphs. From simple flowcharts and org charts to highly-specific industrial diagrams, SCADA and BPMN diagrams, medical diagrams such as genograms and outbreak modeling diagrams, and more. GoJS makes constructing graphs of complex nodes, links, and groups easy with customizable templates and layouts. GoJS offers advanced features for user interactivity such as drag-and-drop, copy-and-paste, in-place text editing, tooltips, context menus, automatic layouts, templates, data binding and models, transactional state and undo management, palettes, overviews, event handlers, commands, extensible tools for custom operations, and customizable animations. We maintain hundreds of sample diagrams, detailing different examples of interactivity, templates, and user logic for you to start from. We offer free developer-to-developer support during evaluation.
Pricing
Integrations
Company Information
Product Details
GoJS Frequently Asked Questions
GoJS Product Features
Application Development
Diagram
Flowchart
GoJS Reviews
Write a Review-
Probability You Would Recommend?1 2 3 4 5 6 7 8 9 10
"GoJS is a great diagramming tool" Edited 2022-03-28
Pros: - performance
- ease of development
- it's easy to extend components
- multiple built-in layouts
- multiple ready to use functionalites helping in diagramming tasks
- many component examples on their main page
- great supportCons: - complex node templates are sometimes hard to build
- since it uses canvas to render a diagram, it's not possible to style objects on a diagram with cssOverall: We have used GoJS extensively since 2012. It helps us deliver complete data visualization and process modeling projects to our customers.
Read More...
We tested the library in simple diagramming components and complex projects with custom graph functionalities. What's more, we even managed to implement a real-time collaboration diagram using GoJS, among others technologies.
What we like the most about GoJS is how much freedom it gives to the developer. Its functionalities have never restricted us. Every module and tool can be extended, so achieving custom features is almost always possible.
GoJS also delivers many ready-to-use components and functionalities like layouts, mouse tools, and animations. We like its focus on details: you need to calculate the nearest line point to your current object? They have a ready-to-use function; do you need to find all elements in a certain radius around the mouse cursor? They've got you covered. We often find ourselves surprised by how many features are already implemented. Tasks that we estimated to take several hours are implemented in an instant.
One of the essential advantages of GoJS is its performance. For many projects we implemented, it was the main reason we chose this technology. The library makes it possible to create large, complex, dynamic diagrams with thousands of objects. Every user's action like dragging, dropping, panning is still smooth. Using some techniques like virtualization, it is even possible to render humongous graphs having hundreds of thousands of objects and connections.
Of course, there is also room for improvement for this technology. Creating and maintaining complex node templates can be tricky. Since it operates on canvas, it's not easy to take advantage of HTML inputs/charts on a diagram. Some layouts implementations aren't optimal. Those things could be better but aren't showstopper in any way. Thanks to the flexibility of the library, we can always find a workaround, integrate 3rd party library, or just email library creators who have a perfect response time.
If anyone is interested what are GoJS capabilities and want to see its usages outside of their main page, we invite you to check out SynergyCodes' main page (synergycodes.com) and our Dribbble (dribbble.com/SynergyCodes)
- Previous
- You're on page 1
- Next