bin+lib gantt_chart

A tool for generating Gantt charts

4 stable releases

3.1.0 May 26, 2024
3.0.1 Feb 20, 2023
2.0.0 Feb 10, 2023

#1206 in Command line utilities


Used in jira_to_gantt

Unlicense

54KB
598 lines

Gantt Chart Generator

coverage Crates.io Docs.rs

New in v2.0, the tool now generates SVG files.

This is a tool to generate simple Gantt charts. Here's some sample output:

Gantt Chart Output

The focus of the tool is the generation of the chart from existing data and not the calculation of project dependencies.

Install with cargo install gantt_chart. Run with gantt-chart. If you have resvg installed, you can generate a PNG bitmap with:

resvg example/project.svg example/project.png --background '#ffffff'`

It has the following features:

  • Takes input date in a simple JSON5 format
  • Groups tasks by resource
  • Schedules a tasks for each resource as soon as the previous one is complete
  • Allows the creation of zero length project milestones
  • Automatically generates resources colors using a Golden Ratio algorithm
  • Customizable column widths
  • SVG allows easy scaled conversion to other formats
  • Tasks can be shown as done or not-done
  • You can add a dotted line to mark the current or other date
  • Can generate a table of resources
  • Takes into account weekends and extends task durations as needed so the start & end to falls on a weekday

You can use the tool to quickly generate high level project timelines. For full blown Gantt functionality, I recommend a tool like OmniPlan.

Dependencies

~4–15MB
~146K SLoC