Version 106 (modified by Genie, 4 years ago) (diff)


Ticket-based Gantt chart and calendar

Try Demo #1 / Demo #2 | View Tickets | New Ticket


This plugin adds Gantt charts and calendar views for tickets to Trac.

See also: ProjectManagementIdeas | TracJsGanttPlugin, TicketCalendarPlugin | WikiCalendarMacro, WikiTicketCalendarMacro | TeamCalendarPlugin, GoogleCalendarPlugin, CalendarPlugin |


  • The Start/End date of a ticket are defined as follows.

Start Date: the date that a task actually began

End Date: the date that a task is scheduled to be completed

but you may interpret the meaning of the date differently. It is up to you (or your team) to define them.

and it is designed to ignore the Completed Percents of a closed ticket.

In case of a closed ticket, Total Hours is used instead of Completed Percents.

And it is strongly recommended to use with the time tracking plugin.

Compared to TracJsGanttPlugin, this plugin does not compute the Completed Percents from custom ticket fields like 'remaininghours' or 'estimatedhours',

but you set the completion value in the range of 0 to 100% in the ticket form, manually.

The automated computed Completed Percents is not meaning actual progress rate.

In case of a opened ticket, It should be evaluated together with Total Hours.

Timezone issue:

  • This plugin is designed for timezone-less. All users and Trac server should have same timezone.

Bugs/Feature Requests

If you have any issues, create a new ticket in Shibuya.trac:


Click on the thumbnails for larger versions of the screenshots.

Thumbnail: Gantt chart view
Gantt chart view

Thumbnail: Calendar view
Calendar view

Thumbnail: Ticket creation
Ticket creation example

Download and Installation

'A' Method: for Trac 0.11 (English)

This plugin is not hosted on Please refer here for download, installation and usage instructions.


The version at the address above is the previous (0.11) release translated into English. The new version (0.12) by the original author now supports English, so using 'B' method below is recommended.

'B' Method: for Trac 0.12 (Multilingual)

You can check out GanttCalendarPlugin from here using Subversion, or browse the source in Shibuya.trac.

Supported Languages: English, German, Simplified Chinese, Japanese, Korean

  1. Install tarball from original repository:
    easy_install ""

or Use mirror repository:

  1. Configure components section in trac.ini (you can disable / enable per project)
    ganttcalendar.admin.holidayadminpanel = enabled
    ganttcalendar.complete_by_close.completeticketobserver = enabled
    ganttcalendar.ticketcalendar.ticketcalendarplugin = enabled
    ganttcalendar.ticketgantt.ticketganttchartplugin = enabled
    ganttcalendar.ticketvalidator.ticketvalidator = enabled
  1. Configure other sections in trac.ini
    ticketgantt.label = Ticket Gantt
    ticketcalendar.label = Ticket Calendar
    complete = select
    complete.label = Completed [%]
    complete.options = |0|5|10|15|20|25|30|35|40|45|50|55|60|65|70|75|80|85|90|95|100
    complete.order = 3
    due_assign = text
    due_assign.label = Start (YYYY-MM-DD)
    due_assign.order = 1
    due_close = text
    due_close.label = End (YYYY-MM-DD)
    due_close.order = 2
    complete_conditions = fixed, invalid
    default_zoom_mode = 3
    first_day = 0
    format = %Y-%m-%d
    show_ticket_summary = false
    show_weekly_view = false
  1. Restart Web Server

Date format for Start/End date:

  • accepted date formats: a numeric date format in the order of year, month, day
Date Format Format Stirng
YYYY-MM-DD 2014-01-31 %Y-%m-%d ISO 8601 date format
YYYY/MM/DD 2014/01/31 %Y/%m/%d legacy date format
YYYY.MM.DD 2014.01.31 %Y.%m.%d
YYYYMMDD 20140131 %Y%m%d
YY-MM-DD 14-01-31 %y-%m-%d
YY/MM/DD 14/01/31 %y/%m/%d
YY.MM.DD 14.01.31 %y.%m.%d
YYMMDD 140131 %y%m%d
  • If you want to use legacy date format (YYYY/MM/DD), you have to change your project's trac.ini file: (if previously created tickets does not shown)
    format = %Y/%m/%d
  • CAUTION !!!

After some tickets are created, you should not change date format.

If you want to change date format in this case, you should update value of custom fields in database directly.

Display holidays:

'Other' Method: for Korean only

The Korean version of GanttCalendarPlugin (A.K.A. ganttcalendar-ko) is developed based on revision 592 of GanttCalendarPlugin,

and the Multilingual version above (A.K.A. ganttcalendar-i18n) is developed based on revision 46 of ganttcalendar-ko.

The ganttcalendar-ko is not hosted on Please refer here for download, installation and usage instructions.

  • for Trac 0.12 / 1.0dev
    svn export
  • for Trac 0.11 / TOW (TracOnWindows) 0.3.0 alpha 1
    svn export


  • The UX was designed inspired by Redmine, and the included icons came from Redmine 0.5.1 / 0.9.4.



Original Author: Takashi Okamoto

Author of English version: Dave Perrett

Author of Korean version: 강순권, JSeo, Genie

Author of Multilingual version: Takashi Okamoto, kabuchan, gil, ssuzuki, Genie

Contributors: tomo_snowbug, paddy mt, YMNet, blue21, かぬ, Jun Omae (A.K.A. jun66j5), Sutra Zhou (support for Simplified Chinese), ItsmeAgain (support for German)

  • Korean version: Seo-Hee Khang, 김기원, 가빈사마, axolotl and 황가 (ejjungeo)

Attachments (4)

Download all attachments as: .zip