# GoJS

## Interactive Diagrams for JavaScript and HTML

See samples »

GoJS is a feature-rich JavaScript library for implementing interactive diagrams across modern web browsers and platforms. GoJS makes constructing diagrams of complex nodes, links, and groups easy with customizable templates and layouts.

GoJS offers many advanced features for user interactivity such as drag-and-drop, copy-and-paste, in-place text editing, templates, data binding and models, transactional state and undo management, palettes, overviews, event handlers, commands, and an extensible tool system for custom operations.

GoJS is pure JavaScript, so users get interactivity without requiring round-trips to servers and without plugins. GoJS normally runs completely in the browser, rendering to an HTML5 Canvas element or SVG without any server-side requirements. GoJS does not depend on any JavaScript libraries or frameworks, so it should work with any HTML or JavaScript framework or with no framework at all.

## Explore

Run over 135 sample apps that illustrate how to build interactive diagrams, including flowcharts, org charts, mind maps, and dozens more.

View Samples

## Learn

Get started with a step-by-step description of how to build an app using a GoJS diagram and some model data.

Learn with GoJS Tutorials

## Download

Get a copy of the library and all of the samples, extensions, and documentation. Search the JavaScript code and modify the samples to start your app.

Download GoJS Clone us from GitHub

## Technical Introduction

Read our introduction for a technical overview of GoJS concepts and features, including hundreds of live interactive examples embedded right in each page.

Read the Introduction

## Unlimited Evaluation

Evaluate the full library without any limitations -- and get free support for a month when you register with us.

Register for Support Contact Us

## API Documentation

Read our comprehensive documentation for an in-depth reference of the properties and methods for all of the classes.

View the API

When upgrading to a newer version, please read the Change Log.

You can explore the newest features and samples in the GoJS Beta for the next version, if a next version is available. Read the beta change log for the new features. Please note that our GitHub directory does not have the beta files.