The JavaScript Gantt Chart is a project planning and management tool that provides a Microsoft Project-like interface to display and manage hierarchical tasks with timeline details. Its intuitive user interface lets you visually manage tasks, resources, and task relationships in a project.
Bind data seamlessly with various local and remote data sources such as JSON, RESTful services, OData services, and WCF services. The JavaScript Gantt Chart uses the data manager for binding the data source.
The JavaScript Gantt Chart supports different configurable timeline views such as hour, day, week, month, and year.
Create relationships between different tasks in project management. When a project is complex and contains many tasks that depend on the completion of others, task dependencies enable you to decide when a task can be started or finished using finish-to-start, start-to-finish, start-to-start, and finish-to-finish task link types.
The Gantt Chart provides full support to create, read, update, and delete (CRUD) operations. In addition to built-in editor controls to edit a particular column value, using template support users can create custom editor controls that suit their application needs. It performs editing operations with a list of business objects or remote data service with the help of the data manager.
The JavaScript Gantt Chart provides built-in support for unscheduled tasks, tasks that are not scheduled with proper dates or duration at the start of the project, but can be scheduled properly at any time during the project implementation based on factors such as resource availability, dependent tasks, and more.
Filtering helps view specific or related records that meet a given filtering criteria. It supports various filter types that include powerful Excel-like filter. The JavaScript Gantt Chart filter allows users to define their own custom filtering logic and customize the filtering UI based on their application needs. It also has an option to filter diacritic characters.
Sort tasks and resources by specified criteria. Sort a column in the ascending or descending order by simply clicking the header. A Ctrl + header click performs multi-sorting.
JavaScript Gantt Chart allows users to select rows or cells by simply clicking on them. One or more rows or cells can be selected by holding the Ctrl or Shift key, or programmatically.
Columns define the schema of a data source in HTML5 Gantt Charts. They support formatting, column definitions, column chooser, column menu, column reorder, and other important features.
Visualize the list of tasks assigned to each resource in a hierarchical manner. Multiple tasks assigned to each resource can be visualized in a row when the records are in a collapsed state.
Easily export the Gantt Chart control in various file formats such as Excel, PDF, or CSV. Users can also programmatically customize the exported document.
Enable and disable the Gantt editing operations with the read-only option.
Users can easily plan and schedule tasks in both auto and manual mode to track their projects. Scheduling helps establish a realistic time frame for the completion of a project.
Virtual scroll in JS Gantt Chart allows you to load large amounts of data without performance degradation. In row virtualization mode, all tasks are fetched initially from the datasource and rendered in the DOM within a compact viewport area.
Customize the appearance and style of the taskbars, records, cell and row elements, etc. using templates.
Focus on the tasks not visible but scheduled later along the timeline by selecting their rows in the tree grid section. Auto focus on specific tasks to make the Gantt timeline more informative and comprehensible.
A tooltip is a great way of showing important data only if needed without overflowing the screen with text. The tooltip displays task information while the mouse hovers over the task and editing actions for the taskbar and connector lines.
Highlight important days or events in a project using event markers.
Display events for a specific task that can be placed on the timeline on any given date.
The Gantt Chart provides toolbar support to handle editing, searching, expanding, collapsing, and deleting selected tasks along with an option for adding new tasks. It accepts the collection of built-in toolbar items and custom toolbar items.
Baseline is the project’s original plan. Setting a baseline helps measure the effectiveness and scope of a project. Compare the current task’s progress with the planned dates using baselines.
Display nonworking days using the holidays feature. Highlight the workdays in one color and weekends and holidays in another.
Allocate multiple resources like staff, equipment, and materials to each task.
Row height is a major factor when displaying the number of records in the view port, and it can be customized effortlessly based on the application’s UI requirement. The height of child and parent taskbars can be customized by using the taskbarHeight property.
The context menu improves user action with Gantt Chart using a pop-up menu. It appears when the cell or header is right clicked. In addition to built-in default menu items, it allows you to add custom context menu items.
Change the Gantt Chart size by setting the width and height properties. Horizontal and vertical scrollbars appear when the content overflows the Gantt Chart element. For the Gantt Chart to fill its parent container, simply set the height and width to 100%.
User-friendly touch gestures and an interactive UI design in Gantt Chart help produce the best user experience. All Gantt Chart features work on touch devices with zero configuration.
Responsive feature allows the Gantt Chart layout to be viewed on various devices. It is also possible to hide certain columns for specific screen sizes using column-based media query support.
The JavaScript Gantt Chart works well with all modern web browsers such as Chrome, Firefox, Microsoft Edge, Safari, and IE11. It supports IE11 with the help of poly fills.
The HTML5 JavaScript Gantt Chart ensures that every cell is keyboard accessible e. Major features like sorting, selection, and editing can be performed using keyboard commands alone with no mouse interaction required. This helps in creating highly accessible applications using this component.
The JavaScript Gantt Chart has complete WAI-ARIA accessibility support. The Gantt Chart UI includes high-contrast visual elements, helping visually impaired people have the best viewing experience. Also, valid UI descriptions are easily accessible through assistive technologies such as screen readers.
Gantt Chart enables users from different locales to use it by formatting the date, currency, and numbering to suit their language preferences. It uses the internalization (i18n) library to handle value formatting.
Users can localize all the strings used in the user interface of Angular Gantt Chart control. It uses the localization (l10n) library to localize UI strings.
Four built-in, SASS-based themes are available: Material, Bootstrap, Fabric (Office 365), Tailwind CSS, and High Contrast.
Simplify theme customization either by overriding the existing SASS styling or creating custom themes using the Theme Studio application.
The HTML5 JavaScript Gantt Chart works well with all modern web browsers such as Chrome, Firefox, Edge, Safari, and IE11.
Developers can have full control over the UI and behavior of the events in Gantt Chart through its built-in, developer-friendly APIs. The simple and extensible APIs allow you to customize even complex Gantt Chart functionalities with ease.
The Gantt Chart component is also available in Blazor, React, Angular, and Vue frameworks. Check out the different Gantt Chart platforms from the links below,
Easily get started with the JavaScript Gantt Chart using a few simple lines of HTML and TS code example as demonstrated below. Also explore our JavaScript Gantt Chart Example that shows you how to render and configure a Gantt Chart in JavaScript.
<div class="control-section">
<div class="content-wrapper">
<div id="DefaultFunctionalities">
</div>
</div>
</div>
import { loadCultureFiles } from '../common/culture-loader';
import { Gantt, Selection } from '@syncfusion/ej2-gantt';
import { projectNewData } from './data-source';
/**
* Default Gantt sample
*/
Gantt.Inject(Selection);
loadCultureFiles();
let gantt: Gantt = new Gantt(
{
dataSource: projectNewData,
height: '450px',
taskFields: {
id: 'TaskID',
name: 'TaskName',
startDate: 'StartDate',
endDate: 'EndDate',
duration: 'Duration',
progress: 'Progress',
dependency: 'Predecessor',
child: 'subtasks'
},
labelSettings: {
leftLabel: 'TaskName'
},
projectStartDate: new Date('03/24/2019'),
projectEndDate: new Date('07/06/2019')
});
gantt.appendTo('#DefaultFunctionalities');
We do not sell the JavaScript Gantt Chart separately. It is only available for purchase as part of the Syncfusion JavaScript suite, which contains over 70 JavaScript components, including the Gantt Chart. A single developer license for the Syncfusion Essential Studio for JavaScript suite costs $995.00 USD, including one year of support and updates. On top of this, we might be able to offer additional discounts based on currently active promotions. Please contact our sales team today to see if you qualify for any additional discounts.
You can find our JavaScript Gantt Chart demo here.
No, our 70+ JavaScript components, including Gantt Chart, are not sold individually, only as a single package. However, we have competitively priced the product so it only costs a little bit more than what some other vendors charge for their Gantt Chart alone. We have also found that, in our experience, our customers usually start off using one of our products and then expand to several products quickly, so we felt it was best to offer all 70+ JavaScript components for a flat fee of $995/developer. On top of this, we might be able to offer additional discounts based on currently active promotions. Please contact our sales team today to see if you qualify for any additional discounts.
No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
A good place to start would be our comprehensive getting started documentation.
Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion is proud to hold the following industry awards.