VTable/packages/vtable-gantt
2024-11-13 16:57:53 +08:00
..
__tests__ Merge remote-tracking branch 'origin/develop' into feat/tickMode-func 2024-09-11 19:53:45 +08:00
examples Merge remote-tracking branch 'origin/develop' into 2680-feature-gantt-drag-taskbar-order 2024-11-13 14:42:42 +08:00
scripts feat: update bundler.config 2024-08-06 11:29:05 +08:00
src feat: drag order line use theme dragHeaderSplitLine style 2024-11-13 16:57:53 +08:00
.eslintrc.js feat: add gantt project 2024-07-14 22:25:31 +08:00
bundler.config.js feat: add createDateAtMidnight function 2024-08-22 17:45:17 +08:00
CHANGELOG.json feat: add gantt project 2024-07-14 22:25:31 +08:00
CHANGELOG.md feat: add gantt project 2024-07-14 22:25:31 +08:00
jest.config.js fix: bugserver build error 2024-08-20 20:53:28 +08:00
package.json build: prelease version 1.10.5 2024-11-11 07:56:35 +00:00
README.md docs: gantt introduction tutorial 2024-09-02 15:50:15 +08:00
README.zh-CN.md docs: gantt introduction tutorial 2024-09-02 15:50:15 +08:00
setup-mock.js feat: add gantt project 2024-07-14 22:25:31 +08:00
tsconfig.eslint.json fix: bugserver build error 2024-08-20 20:53:28 +08:00
tsconfig.json feat: add gantt project 2024-07-14 22:25:31 +08:00

VTable-Gantt

VTable-Gantt create an efficient and flexible Gantt chart solution to make project management easier. Through simple configuration and custom layout, you can quickly get started and meet various complex needs. Improve team collaboration efficiency and achieve transparency of project progress.

IntroductionDemoTutorialAPI

npm Version npm Download license

English| 简体中文

video

Introduction

VTable-Gantt is a Gantt chart component library in the VisActor visualization system, based on the table component VTable and the visualization rendering engine VRender. It is designed specifically for project management and task tracking, providing powerful visualization and interaction features. The core capabilities are as follows:

  1. High performance: Supports fast computation and rendering of large-scale project data, ensuring a smooth user experience.
  2. Flexible layout: Supports custom timeline, task bar styles, and layouts to meet different project management needs.
  3. Powerful interaction: Provides drag-and-drop, zoom, and edit functions for tasks, simplifying project management operations.
  4. Rich visualization capabilities: supports custom rendering of information cells and task bars, provides tree structure display, and improves the diversity and intuitiveness of data display.

Repo Intro

This repository includes the following packages:

  1. packages/vtable: The core code repository of VTable
  2. packages/vtable-gantt: Gantt chart component code
  3. packages/vtable-editors: Table editor component code
  4. packages/vtable-export: Table export tool code
  5. packages/vtable-search: Table search tool code
  6. packages/react-vtable: React version of the table component
  7. packages/vue-vtable: Vue version of the table component
  8. docs: Include VTable site tutorials, demos,apis and options, and also contains all Chinese and English documents.

Usage

Installation

npm package

// npm
npm install @visactor/vtable-gantt

// yarn
yarn add @visactor/vtable-gantt

Quick Start

import {Gantt} from '@visactor/vtable-gantt';
const records = [
  {
    id: 1,
    title: 'Task 1',
    developer: 'liufangfang.jane@bytedance.com',
    start: '2024-07-24',
    end: '2024-07-26',
    progress: 31,
    priority: 'P0',
  },
  {
    id: 2,
    title: 'Task 2',
    developer: 'liufangfang.jane@bytedance.com',
    start: '07/24/2024',
    end: '08/04/2024',
    progress: 60,
    priority: 'P0'
  },
  {
    id: 3,
    title: 'Task 3',
    developer: 'liufangfang.jane@bytedance.com',
    start: '2024-08-04',
    end: '2024-08-04',
    progress: 100,
    priority: 'P1'
  },
  {
    id: 4,
    title: 'Task 4',
    developer: 'liufangfang.jane@bytedance.com',
    start: '2024-07-26',
    end: '2024-07-28',
    progress: 31,
    priority: 'P0'
  }
];

const columns = [
  {
    field: 'title',
    title: 'title',
    width: 'auto',
    sort: true,
    tree: true,
    editor: 'input'
  },
  {
    field: 'start',
    title: 'start',
    width: 'auto',
    sort: true,
    editor: 'date-input'
  },
  {
    field: 'end',
    title: 'end',
    width: 'auto',
    sort: true,
    editor: 'date-input'
  }
];
const option = {
  overscrollBehavior: 'none',
  records,
  taskListTable: {
    columns,
  },
  taskBar: {
    startDateField: 'start',
    endDateField: 'end',
    progressField: 'progress'
  },
  timelineHeader: {
    colWidth: 100,
    backgroundColor: '#EEF1F5',
    horizontalLine: {
      lineWidth: 1,
      lineColor: '#e1e4e8'
    },
    verticalLine: {
      lineWidth: 1,
      lineColor: '#e1e4e8'
    },
    scales: [
      {
        unit: 'day',
        step: 1,
        format(date) {
          return date.dateIndex.toString();
        },
        style: {
          fontSize: 20,
          fontWeight: 'bold',
          color: 'white',
          strokeColor: 'black',
          textAlign: 'right',
          textBaseline: 'bottom',
          backgroundColor: '#EEF1F5'
        }
      }
    ]
  },
};
const ganttInstance = new Gantt(document.getElementById(CONTAINER_ID), option);

More demos and detailed tutorials

Related Links

Ecosystem

Project Description
AI-generated Components AI-generated table component.

Contribution

If you would like to contribute, please read the Code of Conduct Guide first。

Small streams converge to make great rivers and seas!

License

MIT License