Dependency Edit

dependencies.edit: hover a bar and drag from the round handle at its end onto another bar to link them (finish-to-start). Click a link and press Delete to remove it. Keyboard: focus a task and press L, move to another task and press L again (again on a linked pair unlinks). Loops are refused. Ctrl/Cmd+Z undoes. dependencyCreate / dependencyDelete are cancelable and write dependsOn back to your data.

Chart type
Gantt gantt
Tier
Premium
Collection
Gantt
Render
Live, site theme
View .md Agent setup
LIVE/gantt/dependency-edit12 of 35 in Gantt

Configuration

Raw Standalone
const options = {
  chart: {
    height: "auto",
    toolbar: {
      show: false
    },
    type: "gantt",
    events: {
      dependencyCreate: (e, ctx, o) => log('dependencyCreate ' + o.from + ' → ' + o.to + ' (' + o.source + ')'),
      dependencyDelete: (e, ctx, o) => log('dependencyDelete ' + o.from + ' → ' + o.to + ' (' + o.source + ')')
    }
  },
  series: [
    {
      name: "Release",
      data: [
        {
          id: "a",
          x: "Design",
          y: [1791151200000, 1791756000000],
          progress: 100
        },
        {
          id: "b",
          x: "Build",
          y: [1791756000000, 1792706400000],
          progress: 30,
          dependsOn: ["a"]
        },
        {
          id: "c",
          x: "Docs",
          y: [1791928800000, 1792533600000]
        },
        {
          id: "t",
          x: "Test",
          y: [1792706400000, 1793142000000]
        },
        {
          id: "e",
          x: "Release",
          y: 1793314800000,
          milestone: true,
          dependsOn: ["b"]
        }
      ]
    }
  ],
  plotOptions: {
    gantt: {
      today: {
        date: "2026-10-22"
      },
      drag: {
        enabled: true
      },
      dependencies: {
        edit: true
      }
    }
  },
  theme: {
    mode: "light",
    preset: "coastal"
  }
}

const chart = new WestCoastCharts(document.querySelector('#chart'), options)
chart.render()

This example uses Premium modules. Compare licences · Embedding in a distributed product?