# northwoodssoftware/gojs

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/northwoodssoftware-gojs).**

8,447 stars · 2,841 forks · HTML · NOASSERTION

## Links

- GitHub: https://github.com/NorthwoodsSoftware/GoJS
- Homepage: http://gojs.net
- awesome-repositories: https://awesome-repositories.com/repository/northwoodssoftware-gojs.md

## Topics

`canvas` `chart` `charts` `data-visualization` `diagram` `es6` `es6-modules` `flowchart` `gojs` `graph` `html` `interactive-diagrams` `javascript` `javascript-library` `layout` `orgchart` `svg` `typescript` `typescript-library` `visualization`

## Description

GoJS is a JavaScript diagramming library and canvas-based visualization engine used to build interactive flowcharts, organizational charts, and network diagrams. It functions as a data-driven framework that binds JavaScript data models to visual elements, enabling bidirectional synchronization between the underlying data and the graphical representation.

The library features a comprehensive graph layout engine capable of automatically arranging nodes into trees, grids, circles, or force-directed layouts. It distinguishes itself through a template-based system for generating visual parts and a transactional history model that supports atomic commits for reliable undo and redo operations.

Its capability surface covers a wide range of specialized diagram types, including BPMN modeling, Gantt charts, industrial process monitoring, and interactive floor planning. It includes advanced interaction controls such as drag-and-drop palettes, in-place text editing, and obstacle-avoidance link routing, while maintaining performance for large datasets via viewport virtualization.

The framework integrates with various frontend architectures and supports server-side rendering for image generation and automated testing.

## Tags

### Graphics & Multimedia

- [Interactive Diagramming Libraries](https://awesome-repositories.com/f/graphics-multimedia/visualization-mapping/visualization-frameworks/interactive-diagramming-libraries.md) — Functions as a library for embedding interactive, browser-rendered diagrams that bind data to visual templates. ([source](https://gojs.net/latest/samples/minimal.html))
- [Composite Visual Elements](https://awesome-repositories.com/f/graphics-multimedia/composite-visual-elements.md) — Constructs complex visual parts using nested panels, shapes, text, and images as the primary building blocks for nodes. ([source](https://gojs.net/latest/learn))
- [Flowchart Rendering](https://awesome-repositories.com/f/graphics-multimedia/flowchart-rendering.md) — Implements a programmatic rendering engine for custom flowcharts and process diagrams using vector graphics. ([source](https://gojs.net/latest/samples))
- [Canvas Rendering Engines](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/engines/canvas-vector-graphics/canvas-rendering-engines.md) — Implements a high-performance rendering system that draws nodes and links to an HTML Canvas or SVG.
- [Link Path Routing](https://awesome-repositories.com/f/graphics-multimedia/link-path-routing.md) — Determines the path of links between nodes using curved lines or obstacle-avoidance routing to prevent overlaps. ([source](https://gojs.net/latest/learn/))
- [Interactive Canvas Editing](https://awesome-repositories.com/f/graphics-multimedia/multi-format-diagram-editing/live-diagram-editing/interactive-canvas-editing.md) — Provides tools for users to drag elements and reconnect links directly on the canvas. ([source](https://gojs.net/))
- [Template-Based Element Generation](https://awesome-repositories.com/f/graphics-multimedia/template-based-element-generation.md) — Generates visual diagram parts by mapping data records to predefined reusable appearance templates.
- [Tree Layouts](https://awesome-repositories.com/f/graphics-multimedia/tree-layouts.md) — Implements algorithmic tree-structured graph layouts to automatically arrange nodes into layers. ([source](https://gojs.net/latest/samples/decisionTree.html))
- [Concept Maps](https://awesome-repositories.com/f/graphics-multimedia/concept-maps.md) — Displays interlinked concepts using a force-directed layout with link labels. ([source](https://gojs.net/latest/samples))
- [Data-Driven Visual Styling](https://awesome-repositories.com/f/graphics-multimedia/data-visualization-styling/data-driven-visual-styling.md) — Provides the ability to apply distinct visual styles to nodes automatically based on their associated data attributes. ([source](https://gojs.net/latest/samples/familyTree.html))
- [Diagram Animations](https://awesome-repositories.com/f/graphics-multimedia/diagram-animations.md) — GoJS moves nodes or tokens along link paths and applies visual effects to highlight specific parts. ([source](https://gojs.net/latest/samples/index.html))
- [Edge Flow Animations](https://awesome-repositories.com/f/graphics-multimedia/edge-flow-animations.md) — Creates animated visual effects on links to represent the flow of materials through pipes and valves. ([source](https://gojs.net/latest/samples))
- [Family Tree Renderers](https://awesome-repositories.com/f/graphics-multimedia/family-tree-renderers.md) — Arranges nodes in hierarchical layers to display genealogical relationships across generations. ([source](https://gojs.net/latest/samples/familyTree.html))
- [Fill and Stroke Styles](https://awesome-repositories.com/f/graphics-multimedia/graphics-and-media/shape-drawing/sketchy-fill-generators/fill-and-stroke-styles.md) — Provides precise control over the fill color, stroke color, and other visual properties of drawn shapes. ([source](https://gojs.net/latest/learn/api/symbols/Shape.html))
- [Custom Shape Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/engines/canvas-vector-graphics/custom-shape-rendering.md) — Renders a variety of predefined and user-defined custom shapes directly on the canvas. ([source](https://gojs.net/latest/samples))
- [Shape Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/shape-rendering.md) — Implements the rendering of geometric primitives such as rectangles, ellipses, and polygons within the diagram canvas. ([source](https://gojs.net/latest/learn/api/symbols/Shape.html))
- [Grid-Based Node Layouts](https://awesome-repositories.com/f/graphics-multimedia/grid-based-node-layouts.md) — Positions nodes in a grid-like arrangement with configurable ordering, spacing, and wrapping. ([source](https://gojs.net/latest/samples/swimLanes.html))
- [Link Routing Controls](https://awesome-repositories.com/f/graphics-multimedia/link-routing-controls.md) — Provides orthogonal, curved, and parallel routing options for connection lines between diagram nodes. ([source](https://gojs.net/latest/samples))
- [Image Format Rendering](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/image-processing/format-support-extensions/image-format-rendering.md) — Supports loading and rendering images from various formats and sources as elements within diagram nodes. ([source](https://gojs.net/latest/learn/api/symbols/Picture.html))
- [Network Path Routing](https://awesome-repositories.com/f/graphics-multimedia/network-path-routing.md) — Computes paths through connected nodes while avoiding obstacles and respecting specific link constraints. ([source](https://gojs.net/latest/learn/api/symbols/Router.html))
- [Obstacle-Avoidance Link Routing](https://awesome-repositories.com/f/graphics-multimedia/obstacle-avoidance-link-routing.md) — Computes paths for connecting lines that automatically route around nodes to prevent visual overlap.
- [Obstacle Avoidance Routing](https://awesome-repositories.com/f/graphics-multimedia/obstacle-avoidance-routing.md) — Plots link paths that automatically avoid crossing over nodes using a specialized obstacle-avoidance router. ([source](https://gojs.net/latest/samples))
- [Path Animation Utilities](https://awesome-repositories.com/f/graphics-multimedia/path-animation-utilities.md) — Animates diagram parts moving along complex link paths to illustrate progression or flow. ([source](https://gojs.net/latest/samples))
- [Diagram Path Animations](https://awesome-repositories.com/f/graphics-multimedia/path-animation-utilities/diagram-path-animations.md) — Provides the ability to animate nodes or tokens moving along link paths to visualize flow and progression. ([source](https://gojs.net/latest/samples))
- [Snap Alignment Libraries](https://awesome-repositories.com/f/graphics-multimedia/precision-alignment-tools/snap-alignment-libraries.md) — Positions nodes and links using grid snapping and precise alignment tools for uniform distribution. ([source](https://gojs.net/latest/samples/bpmn/BPMN.html))
- [Subgraph Grouping](https://awesome-repositories.com/f/graphics-multimedia/subgraph-grouping.md) — Treats collections of nodes and links as single units to create manageable subgraphs. ([source](https://gojs.net/latest/samples/swimLanes.html))

### User Interface & Experience

- [Data-Driven Diagramming Frameworks](https://awesome-repositories.com/f/user-interface-experience/data-driven-diagramming-frameworks.md) — Provides a complete framework for building diagrams that are bidirectionally synchronized with JavaScript data models.
- [Canvas Pan and Zoom Controls](https://awesome-repositories.com/f/user-interface-experience/2d-panning-controllers/image-pan-and-zoom-controls/plot-pan-and-zoom-controls/canvas-pan-and-zoom-controls.md) — Provides tools for navigating the canvas, including pinch-zooming and infinite scrolling. ([source](https://gojs.net/latest/samples))
- [Bidirectional Data-Binding](https://awesome-repositories.com/f/user-interface-experience/bidirectional-data-binding.md) — Links visual element properties to a JavaScript data model for bidirectional automatic updates.
- [Component Templates](https://awesome-repositories.com/f/user-interface-experience/component-templates.md) — Uses reusable templates to define the appearance and layout of nodes and links. ([source](https://gojs.net/latest/samples/familyTree.html))
- [Data-to-UI Bindings](https://awesome-repositories.com/f/user-interface-experience/data-to-ui-bindings.md) — Links visual element properties to fields in a data model for automatic updates. ([source](https://gojs.net/latest/learn/api/symbols/Part.html))
- [Canvas Element Repositioning](https://awesome-repositories.com/f/user-interface-experience/element-locators/canvas-element-repositioning.md) — Enables repositioning of visual elements on the canvas by updating their location properties. ([source](https://gojs.net/latest/learn/api/symbols/Part.html))
- [Rotation Handles](https://awesome-repositories.com/f/user-interface-experience/grid-layout-engines/element-rotation/rotation-handles.md) — Implements interactive rotation handles for spinning visual elements around their center point. ([source](https://gojs.net/latest/learn/api/symbols/Part.html))
- [Interactive Visual Modeling Tools](https://awesome-repositories.com/f/user-interface-experience/interactive-visual-modeling-tools.md) — Provides a framework for creating editable diagrams with interactive palettes, transactional history, and in-place text editing.
- [Element Resizers](https://awesome-repositories.com/f/user-interface-experience/resizable-panes/element-resizers.md) — Provides interactive resize handles to programmatically and manually update element bounding box dimensions. ([source](https://gojs.net/latest/learn/api/symbols/Part.html))
- [User Input Processing](https://awesome-repositories.com/f/user-interface-experience/user-input-processing.md) — Processes mouse, touch, and keyboard input via a tool system to execute interactive commands. ([source](https://gojs.net/latest/learn/))
- [Viewport-Based Virtualization](https://awesome-repositories.com/f/user-interface-experience/viewport-based-virtualization.md) — Maintains high performance for large datasets by rendering only elements currently within the visible viewport.
- [Visual Component Templates](https://awesome-repositories.com/f/user-interface-experience/visual-component-templates.md) — Uses a template-based system to map data records to reusable visual definitions for nodes and links. ([source](https://gojs.net/latest/samples/index.html))
- [Buttons](https://awesome-repositories.com/f/user-interface-experience/buttons.md) — Integrates clickable interactive controls like expanders and checkboxes directly into the visual nodes. ([source](https://gojs.net/latest/samples/swimLanes.html))
- [Chart Embeddings](https://awesome-repositories.com/f/user-interface-experience/chart-embeddings.md) — Integrates various data visualization components, including pie and bar charts, directly into individual nodes. ([source](https://gojs.net/latest/samples/index.html))
- [Collapsible Containers](https://awesome-repositories.com/f/user-interface-experience/collapsible-containers.md) — Implements containers that group diagram elements together and can be expanded or collapsed by the user. ([source](https://gojs.net/latest/learn/api/symbols/Group.html))
- [Component Palettes](https://awesome-repositories.com/f/user-interface-experience/component-palettes.md) — Ships a draggable palette for placing furniture, appliances, and stairs into a diagram with resizing handles. ([source](https://gojs.net/latest/projects/gojs-floorplanner/index.html))
- [Context Menus](https://awesome-repositories.com/f/user-interface-experience/context-menus.md) — Provides pop-up context menus for executing actions on specific diagram elements. ([source](https://gojs.net/latest/samples/minimal.html))
- [Custom Node Geometries](https://awesome-repositories.com/f/user-interface-experience/custom-node-geometries.md) — Defines complex unique figures using SVG-like path strings and segment objects. ([source](https://gojs.net/latest/samples/genogram.html))
- [Custom Node and Edge Geometries](https://awesome-repositories.com/f/user-interface-experience/custom-node-geometries/custom-node-and-edge-geometries.md) — Constructs arbitrary shapes by parsing geometry path strings or assembling path figures. ([source](https://gojs.net/latest/samples/genogram.html))
- [Custom UI Control Implementations](https://awesome-repositories.com/f/user-interface-experience/custom-ui-control-implementations.md) — Implements specialized UI widgets like gauges, meters, and checkboxes directly within the diagram canvas. ([source](https://gojs.net/latest/samples/index.html))
- [Overview Maps](https://awesome-repositories.com/f/user-interface-experience/diagram-viewport-management/overview-maps.md) — Provides a thumbnail view of a larger diagram to show the current viewport. ([source](https://gojs.net/latest/samples/network.html))
- [Drag-and-Drop Palettes](https://awesome-repositories.com/f/user-interface-experience/drag-and-drop-libraries/drag-and-drop-palettes.md) — Ships a draggable element palette for easily adding nodes and components to a diagram. ([source](https://gojs.net/latest/samples))
- [Force-Directed Layouts](https://awesome-repositories.com/f/user-interface-experience/element-positioning/layout-engines/force-directed-layouts.md) — Positions nodes using physical simulations of attraction and repulsion forces. ([source](https://gojs.net/latest/samples))
- [Floor Plan Components](https://awesome-repositories.com/f/user-interface-experience/floor-plan-components.md) — Allows adding appliances, stairs, and furniture from a palette with support for snapping, rotation, and resizing. ([source](https://gojs.net/latest/projects/gojs-floorplanner/index.html))
- [Link Creation Handles](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/drag-operation-controls/drag-handles/link-creation-handles.md) — Allows users to create new links by dragging from the edge of a node. ([source](https://gojs.net/latest/samples/flowchart.html))
- [Interaction Logic Hooks](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/interaction-logic-hooks.md) — Provides functional interfaces and hooks to override built-in tools and events for custom interaction models. ([source](https://gojs.net/))
- [Interaction Controls](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/interaction-logic-hooks/interaction-controls/interaction-controls.md) — Implements high-level editor interaction logic including context menus, tooltips, and keyboard shortcuts. ([source](https://gojs.net/))
- [Swimlane Layouts](https://awesome-repositories.com/f/user-interface-experience/horizontal-scrolling-utilities/swimlane-layouts.md) — Builds collapsible swimlanes that constrain nodes to stay within their lane. ([source](https://gojs.net/latest/samples))
- [Hover Previews](https://awesome-repositories.com/f/user-interface-experience/hover-previews.md) — Displays informational tooltips as rich content previews when a user hovers over a diagram object. ([source](https://gojs.net/latest/samples/decisionTree.html))
- [Hover-Activated Action Buttons](https://awesome-repositories.com/f/user-interface-experience/hover-previews/hover-activated-action-buttons.md) — Displays contextual action buttons in a node's adornment when the user hovers over it. ([source](https://gojs.net/latest/samples))
- [In-Place Editing Inputs](https://awesome-repositories.com/f/user-interface-experience/in-place-editing-inputs.md) — Allows users to modify text blocks directly within the diagram using custom HTML editors. ([source](https://gojs.net/latest/samples))
- [Input Handling Systems](https://awesome-repositories.com/f/user-interface-experience/input-handling-systems.md) — Processes mouse and keyboard events through a modal tool system to execute specific interaction behaviors.
- [Interactive Connection Managers](https://awesome-repositories.com/f/user-interface-experience/interactive-connection-managers.md) — Provides tools for dynamically drawing, relinking, and deleting connections between node ports. ([source](https://gojs.net/latest/samples))
- [Kanban Boards](https://awesome-repositories.com/f/user-interface-experience/kanban-boards.md) — Builds interactive Kanban boards for categorizing and editing tasks within columns. ([source](https://gojs.net/latest/samples))
- [Custom Layouts](https://awesome-repositories.com/f/user-interface-experience/layout-components/custom-layouts.md) — Provides base structures for developing bespoke positioning algorithms to arrange nodes and links. ([source](https://gojs.net/latest/samples/swimLanes.html))
- [Node Grouping Visuals](https://awesome-repositories.com/f/user-interface-experience/node-grouping-visuals.md) — Implements visual boundaries and panels to group nodes into clusters or subgraphs. ([source](https://gojs.net/latest/samples))
- [Data Merging](https://awesome-repositories.com/f/user-interface-experience/partial-page-refreshers/partial-prop-reloading/data-merging.md) — Applies incremental changes to the model without requiring a full reload of the data set. ([source](https://gojs.net/latest/learn/api/symbols/Model.html))
- [Grid Snapping](https://awesome-repositories.com/f/user-interface-experience/resizable-panes/grid-item-resizers/grid-snapping.md) — Provides a coordinate grid that allows users to snap element positions and sizes to precise increments. ([source](https://gojs.net/latest/samples/gantt.html))
- [SVG Integration](https://awesome-repositories.com/f/user-interface-experience/svg-integration.md) — Integrates SVG path strings to create custom vector-based shapes and icons within diagrams. ([source](https://gojs.net/latest/samples))
- [Viewport Focus Animations](https://awesome-repositories.com/f/user-interface-experience/viewport-focus-animations.md) — Animates the diagram view to scroll to and scale a specific node to draw user attention. ([source](https://gojs.net/latest/samples))
- [Viewport Scrolling Control](https://awesome-repositories.com/f/user-interface-experience/viewport-scrolling-control.md) — Moves the viewport to bring a particular node, link, or part into view. ([source](https://gojs.net/latest/learn/api/symbols/CommandHandler.html))
- [Boundary Constraints](https://awesome-repositories.com/f/user-interface-experience/visual-node-editors/interaction-restrictions/boundary-constraints.md) — Restricts movement or placement of nodes using custom dragging and boundary rules. ([source](https://gojs.net/latest/samples/index.html))
- [Keyboard Shortcut Mapping](https://awesome-repositories.com/f/user-interface-experience/visual-theme-configurations/visual-themes/keyboard-shortcut-mapping.md) — Handles keyboard input events to trigger specific diagram actions or custom command logic. ([source](https://gojs.net/latest/samples/genogram.html))

### Web Development

- [Node-Based Diagramming Frameworks](https://awesome-repositories.com/f/web-development/node-based-diagramming-frameworks.md) — Provides a framework for building interactive, node-based visual editors and diagrams in web applications.
- [Bidirectional Bindings](https://awesome-repositories.com/f/web-development/frontend-development-tools/frontend-frameworks/directives/property-bindings/bidirectional-bindings.md) — Provides bidirectional synchronization between underlying data models and visual diagram elements. ([source](https://gojs.net/))
- [Frontend Framework Integrations](https://awesome-repositories.com/f/web-development/frontend-framework-integrations.md) — Enables embedding diagrams into various JavaScript frontend framework architectures without external dependencies. ([source](https://gojs.net/))
- [Viewport Fitting Controls](https://awesome-repositories.com/f/web-development/node-based-diagramming-frameworks/viewport-fitting-controls.md) — Adjusts the viewport so the entire diagram content is visible within the display area. ([source](https://gojs.net/latest/learn/api/symbols/CommandHandler.html))

### Part of an Awesome List

- [Drag and Drop](https://awesome-repositories.com/f/awesome-lists/devtools/drag-and-drop.md) — Provides comprehensive drag-and-drop functionality for moving parts within diagrams or importing external HTML elements. ([source](https://gojs.net/latest/samples))

### Business & Productivity Software

- [Organizational Charting](https://awesome-repositories.com/f/business-productivity-software/organizational-charting.md) — Creates hierarchical organizational charts with integrated capabilities for structural editing and reorganization. ([source](https://gojs.net/latest/samples))
- [BPMN 2.0 Web Modelers](https://awesome-repositories.com/f/business-productivity-software/bpmn-2-0-web-modelers.md) — Creates interactive process notation diagrams with custom templates and linking rules. ([source](https://gojs.net/latest/samples/bpmn/BPMN.html))
- [Floor Plan Design](https://awesome-repositories.com/f/business-productivity-software/floor-plan-design.md) — Provides capabilities for creating spatial layouts with drag-and-drop palettes and reshapable area definitions. ([source](https://gojs.net/latest/samples))
- [Gantt Charts](https://awesome-repositories.com/f/business-productivity-software/gantt-charts.md) — Creates project timelines with collapsible task trees and scheduled durations in a Gantt chart format. ([source](https://gojs.net/latest/samples))
- [Interactive Floor Planning](https://awesome-repositories.com/f/business-productivity-software/interactive-floor-planning.md) — Enables designing spatial layouts with grid-snapping walls, room definitions, and drag-and-drop furniture.
- [Mind Mapping Software](https://awesome-repositories.com/f/business-productivity-software/mind-mapping-software.md) — Develops interactive mind maps using double-tree diagrams with dynamic node addition. ([source](https://gojs.net/latest/samples))
- [Warehouse Layout Planning](https://awesome-repositories.com/f/business-productivity-software/warehouse-layout-planning.md) — Enables the creation of warehouse layouts with reshapable areas and drag-and-drop palettes. ([source](https://gojs.net/latest/samples))

### Data & Databases

- [Automated Graph Layouts](https://awesome-repositories.com/f/data-databases/automated-graph-layouts.md) — Uses algorithmic positioning such as tree, circular, and force-directed layouts to organize complex graphs.
- [Graph Data Models](https://awesome-repositories.com/f/data-databases/graph-data-models.md) — Manages the diagram as a collection of nodes and links with separate data for each. ([source](https://gojs.net/latest/learn/api/symbols/GraphLinksModel.html))
- [Graph Layout Engines](https://awesome-repositories.com/f/data-databases/graph-layout-engines.md) — Implements an algorithmic system for automatically arranging nodes into trees, grids, and force-directed layouts.
- [Visual Data Modeling](https://awesome-repositories.com/f/data-databases/visual-data-modeling.md) — Connects structured data models to a graphical interface for real-time synchronization and bidirectional updates.
- [Cascading Deletions](https://awesome-repositories.com/f/data-databases/graph-node-deletions/cascading-deletions.md) — Ensures that deleting a parent node automatically removes all of its descendant children. ([source](https://gojs.net/latest/samples/mindMap.html))
- [Data Loading](https://awesome-repositories.com/f/data-databases/json-editors/data-loading.md) — Automatically loads structured JSON objects or arrays into the diagram model. ([source](https://gojs.net/latest/learn/api/symbols/Model.html))
- [Model Persistence](https://awesome-repositories.com/f/data-databases/model-persistence.md) — Saves and loads diagram state as JSON-formatted text for persistence and restoration. ([source](https://cdn.jsdelivr.net/gh/northwoodssoftware/gojs@master/README.md))

### Development Tools & Productivity

- [Change Tracking](https://awesome-repositories.com/f/development-tools-productivity/change-tracking.md) — Tracks additions, deletions, and modifications to the diagram model to support history and synchronization. ([source](https://gojs.net/latest/learn/api/symbols/Model.html))
- [Undo-Redo State History](https://awesome-repositories.com/f/development-tools-productivity/change-tracking/state-tracking-utilities/action-based-state-tracking/undo-redo-state-history.md) — Tracks state changes as atomic operations to provide reliable undo and redo functionality for user actions.
- [Custom Tool Integrations](https://awesome-repositories.com/f/development-tools-productivity/custom-tool-integrations.md) — Enables overriding methods of command handlers, tools, and layouts to add custom interactive behaviors. ([source](https://gojs.net/latest/samples/Fishbone.html))
- [Sequence Diagrams](https://awesome-repositories.com/f/development-tools-productivity/diagramming-tools/system-architecture-visualizers/sequence-diagrams.md) — Provides specialized templates and routing for creating interactive sequence diagrams. ([source](https://gojs.net/latest/samples))
- [State Diagrams](https://awesome-repositories.com/f/development-tools-productivity/diagramming-tools/system-architecture-visualizers/state-diagrams.md) — Supports the construction of state diagrams with dynamic runtime node and link creation. ([source](https://gojs.net/latest/samples))
- [Data-Driven Diagram Generators](https://awesome-repositories.com/f/development-tools-productivity/diagramming-tools/visual-diagram-editors/ai-driven-diagramming/data-driven-diagram-generators.md) — Generates visual diagrams by reading and processing structured JSON data. ([source](https://gojs.net/latest/samples))
- [Multi-View Synchronization](https://awesome-repositories.com/f/development-tools-productivity/technical-documentation/diagram-synchronization/multi-view-synchronization.md) — Links multiple diagrams to a single data model so changes are reflected across all views. ([source](https://gojs.net/latest/samples))

### Game Development

- [Diagram](https://awesome-repositories.com/f/game-development/real-time-physics-engines/simulation-state-management/state-rollbacks/diagram.md) — Supports discarding changes made during a current batch operation to restore the previous diagram state. ([source](https://gojs.net/latest/learn/api/symbols/CommandHandler.html))

### Software Engineering & Architecture

- [Algorithmic Positioning Engines](https://awesome-repositories.com/f/software-engineering-architecture/algorithmic-positioning-engines.md) — Calculates node coordinates using a set of pluggable layout algorithms for trees, grids, and graphs.
- [Atomic Transactional State Commits](https://awesome-repositories.com/f/software-engineering-architecture/atomic-transactional-state-commits.md) — Allows recording batches of diagram changes as single atomic operations for consistent undo and redo. ([source](https://gojs.net/latest/learn/api/symbols/CommandHandler.html))
- [Diagram Link Styles](https://awesome-repositories.com/f/software-engineering-architecture/diagram-link-styles.md) — Provides diverse link styles including orthogonal and perpendicular lines that automatically adapt to node alignment. ([source](https://gojs.net/latest/samples/network.html))
- [Element Relationship Mapping](https://awesome-repositories.com/f/software-engineering-architecture/element-relationship-mapping.md) — Connects nodes using lines and custom link types to represent relationships based on underlying data. ([source](https://gojs.net/latest/samples/network.html))
- [Large Dataset Optimizations](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/data-handling-throughput/large-dataset-optimizations.md) — Reduces memory overhead by creating only visible elements while handling thousands of data points. ([source](https://gojs.net/latest/samples/index.html))
- [Composite Visual Trees](https://awesome-repositories.com/f/software-engineering-architecture/trees/syntax-tree-construction/dom-tree-construction/layout-tree-construction/composite-visual-trees.md) — Constructs nodes and links as a hierarchy of shapes, text blocks, and panels to define visual layout.
- [Undo-Redo Management](https://awesome-repositories.com/f/software-engineering-architecture/undo-redo-management.md) — Manages the editing timeline through a transactional system for state restoration. ([source](https://gojs.net/latest/learn/api/symbols/CommandHandler.html))
- [Component Behavior Overrides](https://awesome-repositories.com/f/software-engineering-architecture/component-functional-extensions/rendering-and-data-extensions/component-behavior-overrides.md) — Allows overriding internal methods and modifying properties of nodes and links to customize interaction and rendering. ([source](https://gojs.net/latest/samples/Fishbone.html))
- [Custom Interactive Tools](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/foundational-theory-and-guidance/software-architecture-principles/user-experience-design/interaction-design-patterns/interaction-customizers/custom-interactive-tools.md) — Supports the creation of custom interaction behaviors such as lasso selection and freehand drawing. ([source](https://gojs.net/latest/samples/index.html))
- [Container Nesting](https://awesome-repositories.com/f/software-engineering-architecture/workflow-nodes/hierarchical-nesting/container-nesting.md) — Provides hierarchical containers that organize related nodes into expandable and collapsible groups. ([source](https://gojs.net/latest/samples/index.html))

### Artificial Intelligence & ML

- [Interactive Link Reconnection](https://awesome-repositories.com/f/artificial-intelligence-ml/audio-transcription/interactive-link-reconnection.md) — Supports disconnecting and reconnecting link ends to valid connection ports via drag-and-drop. ([source](https://gojs.net/latest/samples))

### Hardware & IoT

- [Schematic Capture Editors](https://awesome-repositories.com/f/hardware-iot/layout-versus-schematic-verifiers/schematic-capture-editors.md) — Supports drawing electronic circuit diagrams using specialized symbols, wires, and routed connections.

### Networking & Communication

- [Functional Network Topologies](https://awesome-repositories.com/f/networking-communication/functional-network-topologies.md) — Designs network topologies with the ability to organize nodes into functional subnetworks. ([source](https://gojs.net/latest/samples))
- [Interactive Connection Ports](https://awesome-repositories.com/f/networking-communication/network-port-configuration/dynamic-port-synchronization/interactive-connection-ports.md) — Allows users to dynamically add and manage connection ports on nodes via buttons or context menus. ([source](https://gojs.net/latest/samples))

### Scientific & Mathematical Computing

- [Dynamic System Modeling](https://awesome-repositories.com/f/scientific-mathematical-computing/dynamic-system-modeling.md) — Provides visualization capabilities for system dynamics, including material storages and flows. ([source](https://gojs.net/latest/samples))
- [Circular Layouts](https://awesome-repositories.com/f/scientific-mathematical-computing/network-graph-layouts/circular-layouts.md) — Positions nodes in circular or radial arrangements around a central point. ([source](https://gojs.net/latest/samples))
- [Directed Graph Layouts](https://awesome-repositories.com/f/scientific-mathematical-computing/network-graph-layouts/directed-graph-layouts.md) — Places nodes of directed graphs into organized layers of rows or columns for hierarchical readability. ([source](https://gojs.net/latest/samples/sankey.html))

### System Administration & Monitoring

- [Industrial Monitoring Screens](https://awesome-repositories.com/f/system-administration-monitoring/industrial-monitoring-screens.md) — Builds SCADA-style monitoring screens and process flow visualizations for industrial control systems. ([source](https://gojs.net/))
- [Industrial Process Visualization](https://awesome-repositories.com/f/system-administration-monitoring/industrial-process-visualization.md) — Creates SCADA-style monitoring screens and piping diagrams with live indicators and animated process flows.
- [Real Time Process Monitors](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/real-time-process-monitors.md) — Displays real-time industrial data on SCADA-style diagrams with updating indicators and icons. ([source](https://gojs.net/latest/samples))
- [Security Operation Dashboards](https://awesome-repositories.com/f/system-administration-monitoring/web-based-dashboards/security-operation-dashboards.md) — Constructs real-time security operation dashboards displaying live video feeds and door status. ([source](https://gojs.net/latest/samples))
