View Categories

Gantt Chart

Introduction #

Redmineflux Gantt Chart Plugin is an interactive timeline planning Plugin for Redmine. It adds a modern Flux Gantt view where teams can plan releases, schedule tasks, manage dependencies, monitor progress, and compare baseline snapshots directly inside Redmine.

The plugin improves on Redmine’s native read-only Gantt view by adding interactive controls such as drag-and-drop rescheduling, bar resizing, dependency linking, inline editing, date range control, zoom levels, per-user settings, and a global cross-project timeline.

Version Compatibility #

Supported Redmine versions:

  • 5.0.x
  • 5.1.x
  • 6.0.x

For Redmine 5.x installations, use the Redmine 5 compatible version of the plugin.

Installation #

To install the Redmineflux Gantt Chart Plugin:

  1. Make sure Redmine is already installed and working.
  2. Extract the plugin archive.
  3. Upload the plugin folder to Redmine/plugins/redmineflux_gantt_plugin.
  4. Do not rename the plugin folder.
  5. Go to the Redmine root directory.
  6. Install dependencies:

    bundle install

  7. Run plugin migrations.

    For production:

    RAILS_ENV=production bundle exec rake redmine:plugins:migrate NAME=redmineflux_gantt_plugin

    For development:

    RAILS_ENV=development bundle exec rake redmine:plugins:migrate NAME=redmineflux_gantt_plugin

  8. Restart Redmine.

    Example:

    touch tmp/restart.txt

  9. Go to Administration > Plugins and confirm that Redmineflux Gantt Plugin is listed.

Configuration #

Plugin-level configuration is available from:

  1. Administration
  2. Plugins
  3. Redmineflux Gantt Plugin
  4. Configure

The plugin-level settings page explains that most project display options are configured directly from the Flux Gantt chart settings panel.

Current plugin-level setting:

  • Show closed projects

Project-level and user-level options are managed inside the Gantt UI.

Gantt Chart Overview #

The plugin provides two main working areas:

  1. Project Flux Gantt A project-scoped timeline for releases, issues, subtasks, dependencies, baselines, and unversioned issues.
  2. Global Flux Gantt A cross-project timeline available from the top menu. It shows visible projects and their issues in a single global planning view.

Main capabilities include:

  • Project timeline planning
  • Global cross-project planning
  • Release and issue bars
  • Subtask hierarchy
  • Drag-and-drop task rescheduling
  • Bar resizing for date changes
  • Inline issue editing modal
  • Release creation
  • Issue creation
  • Dependency creation and removal
  • Cross-project dependency support in Global Gantt
  • Baseline snapshots
  • Baseline comparison overlay
  • Expand All and Collapse All
  • Issues without version sidebar
  • Search and filtering
  • Date range picker
  • Zoom levels: Hours, Day, Week, Month
  • Display modes: Work Days and Full Week
  • Per-user settings and UI state persistence
  • Column display options
  • Bar color customization

How to Enable Flux Gantt for a Project #

To enable Flux Gantt for a project:

  1. Log in as an administrator or a user with project settings permission.
  2. Open the project.
  3. Go to Settings.
  4. Open the Modules tab.
  5. Enable Flux Gantt Chart.
  6. Save the project settings.

After enabling the module, the project menu shows Flux Gantt.

How to Open Project Flux Gantt #

To open the project Gantt view:

  1. Open a project.
  2. Click Flux Gantt in the project menu.

The project Gantt is available at /projects/:project_id/flux_gantt or /projects/:project_id/project_gantt.

The project view loads releases first and lazy-loads issues when a release is expanded. This keeps large projects responsive.

How to Use Global Flux Gantt #

Global Flux Gantt is available from the top navigation menu at /global_gantt.

To open it:

  1. Log in to Redmine.
  2. Click Flux Gantt from the top menu.

Global Flux Gantt shows projects the current user can access. It supports:

  • Paginated project rows
  • Lazy issue loading per project
  • Cross-project issue updates when permissions allow
  • Cross-project dependency linking
  • Global settings per user
  • Project expand and collapse state

Use Global Flux Gantt when managers need a planning view across multiple projects.

How to Read the Timeline #

The timeline contains a left panel and a right timeline area.

The left panel shows project, release, issue, or subtask information. Depending on settings, it can show:

  • Subject
  • Task ID
  • Assignee
  • Progress
  • Estimated hours
  • Baseline controls

The right side shows bars on a date grid.

Common bar types:

  • Release bars
  • Issue bars
  • Subtask bars
  • Baseline comparison bars
  • Today line
  • Dependency lines

The bar position represents start and due dates. Bar fill can represent progress.

How to Add a Release #

To add a release from the project Flux Gantt view:

  1. Open the project Flux Gantt.
  2. Click Add Release.
  3. Enter release name.
  4. Add description if needed.
  5. Select start date and due date.
  6. Save.

The release appears as a timeline row and can contain issues.

Required behavior:

  • Release name cannot be blank.
  • Start date must be before or equal to due date.

How to Add an Issue #

To add an issue from the Gantt chart:

  1. Open Project Flux Gantt.
  2. Click Add Issue.
  3. Enter subject.
  4. Choose tracker.
  5. Choose release or version.
  6. Select parent issue if needed.
  7. Enter start date and due date.
  8. Add estimated hours if needed.
  9. Choose assignee if needed.
  10. Save.

The new issue appears on the selected release timeline.

Notes:

  • Issue creation depends on project permissions.
  • If the user does not have edit permission, mutation buttons are hidden.
  • Direct API calls also enforce permissions.

How to Edit Issues Inline #

The plugin supports an in-app edit modal.

To edit an issue:

  1. Open the Gantt chart.
  2. Double-click an issue bar or row.
  3. Update editable fields such as subject, assignee, dates, progress, or custom fields.
  4. Save.

This avoids leaving the timeline to open the full Redmine issue page.

How to Reschedule Tasks with Drag and Drop #

To move a task:

  1. Open the Gantt chart.
  2. Locate the issue bar.
  3. Drag the bar left or right on the timeline.
  4. Drop it on the new date.

The plugin updates issue dates if:

  • The user has edit permission.
  • The issue dates are editable.
  • The new dates pass validation.
  • The workflow and Redmine rules allow the update.

The interface uses optimistic updates. The bar moves immediately, then reverts automatically if the server rejects the change.

How to Resize Task Bars #

To change task duration:

  1. Open the Gantt chart.
  2. Move the pointer to the left or right edge of an issue bar.
  3. Drag the edge to the new date.
  4. Release the pointer.

Resize behavior:

  • Left resize changes the start date.
  • Right resize changes the due date.
  • Duration changes are validated on the server.

Validation examples:

  • Start date must be before or equal to due date.
  • Subtask dates must stay inside parent task dates.
  • Dates may be read-only when they are auto-calculated from subtasks.

How to Manage Dependencies #

The plugin supports issue relation links on the chart.

To create a dependency:

  1. Open the Gantt chart.
  2. Use the dependency linking interaction between two issue bars.
  3. Confirm the dependency if prompted.

To remove a dependency:

  1. Select or interact with the dependency line.
  2. Use the delete or remove action.
  3. Confirm the removal.

Dependency rules:

  • A task cannot depend on itself.
  • Parent and child tasks cannot be directly linked.
  • Cross-project links in Global Gantt require edit permission on both projects.

How to Use Issues Without Version #

The project Gantt view includes an Issues Without Version panel.

This panel lists issues that are not assigned to a release or version.

Use it to:

  • Find unplanned work
  • Assign issues to a release
  • Drag issues into the timeline planning flow

If all issues are assigned to releases, the panel shows an empty state.

How to Expand and Collapse Releases #

To expand a release:

  1. Open Project Flux Gantt.
  2. Click the expand control on a release row.

Issues for that release are loaded only when needed.

To collapse a release:

  1. Click the collapse control on the release row.

Toolbar options:

  • Expand All
  • Collapse All

Expand and collapse state is saved per user and project.

How to Search and Filter the Chart #

The Gantt chart supports search and filtering to help users find tasks quickly.

Common filter controls include:

  • Search text
  • Type filter
  • Date range filter
  • Assignee visibility through display settings

In Global Flux Gantt, you can also apply IssueQuery-based filters to narrow issues across all visible projects.

To search:

  1. Open the chart.
  2. Enter a keyword in the search field.
  3. Matching rows remain visible.
  4. Clear the search to show all rows.

If no matching results exist, the chart shows an empty search state.

How to Use Date Range Controls #

The date range picker lets users focus the timeline on a specific period.

To set a date range:

  1. Open the chart.
  2. Use Date From/To controls.
  3. Select the start and end date.
  4. Apply the range.

Use date range controls to focus on:

  • Current sprint
  • Release window
  • Quarter planning
  • Milestone review

How to Use Zoom and Display Modes #

The chart supports multiple zoom levels:

  • Hours
  • Day
  • Week
  • Month

To change zoom:

  1. Open the settings panel or toolbar zoom control.
  2. Choose the zoom level.
  3. The timeline redraws with the selected scale.

Display modes:

  • Work Days
  • Full Week

Work Days mode helps teams focus on business days. Full Week mode shows weekends as regular timeline days.

How to Configure Display Fields and Bar Colors #

Open the Gantt settings panel from the chart toolbar.

Display field options include:

  • Show Assignee
  • Show Progress
  • Show Estimated Hours
  • Show Task ID
  • Baseline controls

Bar color options include:

  • Release bar color
  • Issue bar color
  • Subtask bar color

Individual issue bar colors can also be set per issue using the issue color field when available.

These settings are stored per user so each user can keep their preferred layout.

How to Use Baselines #

Baselines let teams save a snapshot of the current timeline and compare future changes against that snapshot.

To create a baseline:

  1. Open Project Flux Gantt.
  2. Open baseline controls.
  3. Click Create Baseline.
  4. Enter a baseline name.
  5. Save.

To compare against a baseline:

  1. Select an existing baseline.
  2. Enable baseline display if needed.
  3. Review baseline overlay bars and schedule drift.

To delete a baseline:

  1. Open baseline controls.
  2. Select the baseline.
  3. Click Delete.
  4. Confirm the action.

Baseline notes:

  • Baseline name cannot be blank.
  • Baselines help compare planned dates with current dates.
  • Baseline data is removed when the baseline is deleted.

How Progress Is Calculated #

Progress can be shown on task bars as a visual fill.

For normal issues:

  • Progress is based on the issue done ratio.

For parent issues with subtasks:

  • Progress and dates may be calculated from child issues.
  • Some fields may be read-only because they are derived from subtasks.

If an edit is rejected with a read-only dates or progress error, update the child tasks that control the parent values.

Permissions and Access Control #

The plugin defines the Flux Gantt Chart project module.

Main permissions:

  1. View Flux Gantt Allows users to open and interact with the Gantt view in read mode.
  2. Create and edit Gantt issues and releases Allows users to create, update, delete, drag, resize, assign versions, manage relations, update settings, and manage baselines.
  3. View Global Gantt Allows users to access the Global Flux Gantt view from the top navigation menu.

Permissions are configured from:

  1. Administration
  2. Roles and permissions
  3. Select a role
  4. Redmineflux Gantt Chart permissions

Project module access is configured from:

  1. Project
  2. Settings
  3. Modules
  4. Flux Gantt Chart

Important behavior:

  • Users without edit permission can view but cannot mutate chart data.
  • Drag handles and mutation buttons are hidden for users without edit permission.
  • Direct API requests enforce permission checks.
  • Cross-project dependency creation requires edit permission on both projects.

Troubleshooting #

If Flux Gantt does not appear in a project:

  1. Confirm the plugin folder is named redmineflux_gantt_plugin.
  2. Confirm the plugin appears in Administration > Plugins.
  3. Confirm plugin migrations were run.
  4. Open Project Settings > Modules.
  5. Enable Flux Gantt Chart.
  6. Confirm the user’s role has View Flux Gantt permission.
  7. Restart Redmine.

If the chart loads but no releases appear:

  1. Confirm the project has versions or releases.
  2. Use Add Release to create a release.
  3. Confirm date filters are not hiding the release.
  4. Clear search and filters.

If issues do not appear under a release:

  1. Expand the release row.
  2. Confirm issues are assigned to that target version.
  3. Confirm date range filters include the issue dates.
  4. Click Expand All to load all release issues.

If drag or resize does not work:

  1. Confirm the user has Create and edit Gantt issues and releases permission.
  2. Confirm the issue dates are editable.
  3. Confirm the issue is not a derived parent with read-only dates.
  4. Check whether the new dates violate parent, subtask, or release boundaries.
  5. Review the toast message shown by the chart.

If dependency creation fails:

  1. Confirm both tasks are valid dependency targets.
  2. Do not link a task to itself.
  3. Do not directly link parent and child tasks.
  4. For Global Gantt, confirm edit permission on both projects.

If Global Gantt shows no projects:

  1. Confirm the user can view projects in Redmine.
  2. Confirm Flux Gantt Chart is enabled on projects.
  3. Confirm permissions for View Flux Gantt and View Global Gantt.
  4. Check whether closed projects are hidden by plugin settings.

If baseline controls do not appear:

  1. Open the settings panel.
  2. Enable baseline controls or baseline display fields.
  3. Confirm the user has edit permission if creating or deleting baselines.

Frequently Asked Questions #

Q1. Does Flux Gantt replace Redmine’s native Gantt?

No. The plugin adds a separate Flux Gantt menu entry. Redmine’s native Gantt remains available.

Q2. Can I use Flux Gantt across multiple projects?

Yes. Use Global Flux Gantt from the top menu.

Q3. Can users drag tasks to reschedule them?

Yes, if they have edit permission and the issue dates are editable.

Q4. What happens if a drag update fails?

The chart reverts the bar to its previous position and shows a failure message.

Q5. Can I create dependencies from the chart?

Yes. The plugin supports dependency creation and removal. Global Gantt also supports cross-project dependencies when permissions allow.

Q6. Can I plan issues that are not assigned to a version?

Yes. Use the Issues Without Version panel.

Q7. Are settings saved per user?

Yes. Display settings and expand/collapse state are stored per user.

Q8. Can I compare current dates with an earlier plan?

Yes. Create a baseline and enable baseline display to compare timeline drift.

Q9. Which zoom levels are available?

Hours, Day, Week, and Month.

Q10. Does the plugin support Redmine 6?

Yes. This version is designed for Redmine 6.x.

Uninstallation #

To uninstall the plugin:

  1. Go to the Redmine installation directory.
  2. Roll back plugin migrations if you want to remove plugin database tables:

    bundle exec rake redmine:plugins:migrate NAME=redmineflux_gantt_plugin VERSION=0 RAILS_ENV=production

  3. Remove the plugin folder plugins/redmineflux_gantt_plugin.
  4. Restart Redmine.

Take a database backup before rollback or uninstallation.

Conclusion #

Redmineflux Gantt Chart Plugin turns Redmine project planning into an interactive timeline experience. It combines project-level planning, global cross-project visibility, drag-and-drop scheduling, dependency management, inline editing, baselines, date range control, zoom modes, per-user settings, and permission-aware editing in one Redmine-native workflow.

Powered by BetterDocs