[GoJS.net](https://gojs.net/latest/index.html) is a flexible and powerful JavaScript diagramming library developed by Northwoods Software. It is used for building interactive diagrams and graphs, ranging from simple flowcharts and organizational charts to complex business process and workflow visualizations. GoJS provides a variety of features including model-view separation, template-based views, automatic layouts, layering, data binding, overviews, event handling, commands, undo and redo management. One of its key advantages is the ability to customize every part of its functionality according to specific needs. In terms of comparison with [[Mermaid]]: 1. Flexibility: GoJS is more flexible than Mermaid.js in terms of customizing the appearance and behavior of diagrams. It supports custom shapes, colors, link styles, templates etc., whereas Mermaid has limited customization options. 2. Complexity: GoJS is capable of creating more complex diagrams like state charts or sequence diagrams compared to Mermaid.js. 3. Learning Curve: GoJS might have a steeper learning curve compared to mermaid.js due to its extensive features and complexity. 4. Licensing: GoJS is a commercial product with licensing costs involved whereas Mermaid.js is an open-source project available for free use. 5. Use Case: If you need simple flowcharts or sequence diagrams with minimal customization in markdown files or wikis etc., Mermaid.js would be sufficient. But if you are building an application that requires complex interactive diagrams with high degree of customization, GoJS would be the better choice. 6. Rendering: GoJS works well for real-time rendering while Mermaid.js may be more suited for static site generation or documentation as it uses markdown-like syntax to generate diagrams. 7. Interactivity: GoJS supports user interactivity out-of-the-box like dragging nodes around or editing text etc., which might not be possible with Mermaid.js without additional coding. In conclusion, both have their strengths depending on what you need. If you're looking for something lightweight, simple and free for creating basic diagrams, Mermaid.js is a good choice. If you need a robust and flexible solution for creating complex and interactive diagrams, especially in a commercial setting, GoJS would be more suitable. # ChatGPT Answer GoJS is a flexible and powerful JavaScript framework designed for building interactive diagrams and visualizations for web applications. It was developed by the software company Northwoods Software. Here are some key features of GoJS: 1. Interactivity: GoJS supports various types of user interactions, including creating, editing, selecting, dragging, resizing, and deleting nodes and links. 2. Customizability: It provides a high level of customizability allowing developers to define their own node and link templates with arbitrary HTML elements. 3. Data Binding: It supports data-binding so that the diagram structure and properties can be kept in sync with model data. 4. Layouts: GoJS includes a number of predefined layouts such as tree layout, layered digraph layout, circular layout etc., that can automatically arrange nodes and links in a diagram. 5. Overviews & Navigation: It provides features like overview windows for easier navigation in large diagrams. 6. Undo & Redo: The framework supports undoing and redoing changes made to the model or diagram, including changes made to selections. 7. Zoom & Pan: It allows users to zoom in or out of diagrams as well as pan across them. 8. Mobile Support: GoJS is designed to work well on touch devices like tablets and smartphones, providing touch-specific interactivity features such as pinch-zooming and panning. 9. Export Features: Diagrams can be exported as images or saved in JSON format for persistent storage or sharing between users. 10. Extensive Documentation & Examples: The GoJS website provides extensive documentation along with numerous examples demonstrating different features of the library which makes it easier to understand how it works. GoJS is primarily used by developers building enterprise-level applications requiring complex diagrams, visualizations or flowcharts like business process modelling tools(BPM), computer network design tools, organizational charts etc. # Bard Answer **Here's a summary of GoJS, a powerful JavaScript diagramming library:** **Key Features:** - **Interactive Diagrams:** Create a wide variety of interactive diagrams, including flowcharts, org charts, process maps, network diagrams, decision trees, state charts, and more. - **Customizable Elements:** Extensively customize nodes and links with shapes, colors, data visualizations, text, images, and custom behaviors. - **Flexible Layouts:** Choose from built-in layouts or create custom arrangements for nodes and links, ensuring clear and meaningful visual representations. - **User Interactions:** Enable intuitive actions like panning, zooming, dragging, resizing, selecting, editing, and context menus for a seamless user experience. - **Data Binding:** Seamlessly integrate with external data sources, allowing diagrams to reflect real-time changes and updates. - **Export Capabilities:** Export diagrams to various formats, including SVG, PNG, JPEG, PDF, and HTML, for sharing and embedding. **Example Diagrams:** **Flowcharts:** [![Image of flowchart created with GoJS](https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcRxRSBqa0uiqlhZxslN6rKxGYBDUCdHXNqaISBo12NA9z_26lFjZNU1gAdUgYPL)Opens in a new window](https://gojs.net/latest/index.html)[![](https://encrypted-tbn3.gstatic.com/favicon-tbn?q=tbn:ANd9GcTnrpUU3QWMfFhri62G-NK0G1c_S8DZmJtXagAq0PWM6ZjoE53Qrd_iX-j23l5MXboU-gqV7BOoxxcjSDMaRs3wRO8)gojs.net](https://gojs.net/latest/index.html) flowchart created with GoJS **Org Charts:** [![Image of org chart created with GoJS](https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcRDkmTjBty06BoskOeD0cMUE6uVC_0yPAs7QyoSW8hNqezfsQXp9ib_0MdJIP7z)Opens in a new window](https://gojs.net/latest/samples/)[![](https://encrypted-tbn3.gstatic.com/favicon-tbn?q=tbn:ANd9GcTnrpUU3QWMfFhri62G-NK0G1c_S8DZmJtXagAq0PWM6ZjoE53Qrd_iX-j23l5MXboU-gqV7BOoxxcjSDMaRs3wRO8)gojs.net](https://gojs.net/latest/samples/) org chart created with GoJS **Process Maps:** [![Image of process map created with GoJS](https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcTtAxJOf4o5d9_ImD5tErhzqOpr4-bHlSRocoHP6-JyGCbClDKGAcIJcWGe7Rgx)Opens in a new window](https://gojs.net/latest/samples/)[![](https://encrypted-tbn3.gstatic.com/favicon-tbn?q=tbn:ANd9GcTnrpUU3QWMfFhri62G-NK0G1c_S8DZmJtXagAq0PWM6ZjoE53Qrd_iX-j23l5MXboU-gqV7BOoxxcjSDMaRs3wRO8)gojs.net](https://gojs.net/latest/samples/) process map created with GoJS **Network Diagrams:** [![Image of network diagram created with GoJS](https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcSJBmFuTbHnQNBZlxYaKaME-DMkNJwk2sk6713jy233JaTDXu3miXkCvrYwwOPB)Opens in a new window](https://stackoverflow.com/questions/54130817/javascript-package-or-plugin-to-create-network-diagrams-with-ips)[![](https://encrypted-tbn0.gstatic.com/favicon-tbn?q=tbn:ANd9GcSZCmAD8gauBz6zQWhiwNyTdW_qTaFn86kY4i9ue0TKLdig0zZecaQOGXjB62-l1zYTQFINdpkKZYc51ilBK8hviR3QOYWdHDC9F54)stackoverflow.com](https://stackoverflow.com/questions/54130817/javascript-package-or-plugin-to-create-network-diagrams-with-ips) network diagram created with GoJS **Decision Trees:** [![Image of decision tree created with GoJS](https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcRkPmxLH0E5wd0BEhIy3FMCvS9nzMXiUxzxxMFKumnjZi9Sm676HW86mVnLcp05)Opens in a new window](https://forum.nwoods.com/t/represent-hierarchy-with-gojs-tree-layout/14681)[![](https://encrypted-tbn1.gstatic.com/favicon-tbn?q=tbn:ANd9GcTW3l6Y1rU5B8deY_GwdusXtdcfnZzpPAbBoUZCHtiuW6f-Us5lyFU3zN_54dU_eZLUrzTxjGG3Q0OD91u-Gq5hv-oW_1uyaole4A)forum.nwoods.com](https://forum.nwoods.com/t/represent-hierarchy-with-gojs-tree-layout/14681) decision tree created with GoJS **State Charts:** [![Image of state chart created with GoJS](https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRoJvd2OcKAD7JNqOaYq1ryBbYKJYl2aqpJEErT5sNqWJnI2vkdcBeR63KbUtv5)Opens in a new window](https://gojs.net/latest/index.html)[![](https://encrypted-tbn3.gstatic.com/favicon-tbn?q=tbn:ANd9GcTnrpUU3QWMfFhri62G-NK0G1c_S8DZmJtXagAq0PWM6ZjoE53Qrd_iX-j23l5MXboU-gqV7BOoxxcjSDMaRs3wRO8)gojs.net](https://gojs.net/latest/index.html) state chart created with GoJS **Integration with Modern Frameworks:** - Works seamlessly with React, Angular, Vue, and other popular JavaScript frameworks. **Additional Features:** - Model-View architecture for clear separation of data and visualization. - Supports undo/redo actions, data validation, and custom tools. - Server-side rendering capabilities for improved performance. - Extensive documentation, tutorials, and examples for easy learning. **Overall, GoJS is a versatile and powerful library for building interactive diagrams in web applications, offering a rich set of features, customization options, and integration capabilities, making it a valuable tool for developers and designers across various domains.** # References ```dataview Table title as Title, authors as Authors where contains(subject, "GoJS") ```