Read-only Gantt for Jira
A Gantt chart for a Jira project. It reads your issues and draws them on a timeline — and it holds no write permission, so it cannot change, move or delete anything in Jira.
Installing and finding the chart
The app runs on Jira Cloud. Install it from the Atlassian Marketplace, or in Jira under Settings → Apps → Explore more apps. Installation needs Jira administrator rights; using the chart does not.
After installation, open any project and choose Gantt in the project sidebar. Both company-managed and team-managed projects are supported.
Everyone who can browse the project can open the chart. The app shows each person exactly the issues they can already see in Jira — it never widens access.
How issues load
Opening the chart reads only the top level of the project: epics, plus any issues that have no parent. On a large project this is the difference between a chart in under a second and a wait of half a minute, so it is worth knowing where the rest is.
To see what is inside a branch, either click the arrow next to it in the list, or click the epic’s bar on the timeline. Both load that branch’s issues and show them.
Clicking an epic’s bar expands it rather than opening the issue, because that is what people want far more often. To open the epic itself, click its key in the list on the left.
Expand all loads the entire project. On a project of a few thousand issues this takes a while and is deliberately never done automatically — only when you ask for it. A progress bar appears under the toolbar, and a spinner appears on the row you clicked.
The status line always says how much is loaded, so nothing is hidden from you silently.
Reading the chart
The shape of a bar tells you where its dates came from.
| What you see | What it means |
|---|---|
| Solid bar | The issue has a start date and a due date of its own. |
| Diamond | The issue has a due date but no start date, so it is drawn as a milestone rather than a bar of zero length. |
| Dashed outline | A parent with no dates of its own. The range is derived from its children, and the tooltip says so. Nothing is invented. |
| No bar at all | The issue has no dates. It still appears in the list, because “this issue has no dates” is worth knowing. |
| Red outline | The due date is earlier than the start date. The data is shown as it is, not quietly corrected. |
| Arrow between bars | A dependency. By default these are Blocks links;
an administrator can add other link types. |
| Red dashed arrow | A dependency whose dates contradict it — the blocked issue starts before the blocking one ends. |
An arrow is drawn only when both issues are loaded. If a dependency points into a branch you have not expanded yet, it appears once you expand it.
Hovering a row shows a tooltip with the issue type, full summary, status, assignee, dates and duration — useful in the list, where long summaries are usually cut off.
When the chart opens it centres on today: the current date sits about a third of the way in from the left, and the list scrolls to the first row whose work crosses today. If you have already moved the view yourself, the app will not move it under your hands.
Controls
- Completed
- Off by default. Turn it on to include issues in a Done status. A Gantt chart is usually opened to look forward, so finished work starts out hidden — but the status line always says how much is hidden.
- Undated
- Off by default. Issues with no dates have no bar, and in quantity they push the real work off screen. Turn it on to see them in the list.
- Collapse all / Expand all
- Collapse all reduces the view to epics — a compact overview of what is running, finished and still ahead. Expand all loads and shows everything.
- Today
- Returns the view to the current date.
- Timeline scale
- Days, Weeks or Months.
Moving around. Drag the chart itself to pan in any direction; a throw carries a little momentum. The scrollbar still works, but on a six-month timeline dragging is far quicker.
The divider between the list and the timeline can be dragged to give either side more room. Double-click resets it. Your choice is remembered in the browser, per screen.
Opening an issue. Click an issue key in the list, or a bar or milestone on the timeline. It opens in a new tab so the chart stays where it was.
Dates, month names, the first day of the week and which days count as the weekend all follow your Jira language and region settings, not the app’s. The app’s own interface is in English.
The status line
Under the chart, one line answers the questions support gets asked most:
41 of 4001 issues loaded— how much of the project is on screen. The rest is inside branches you have not expanded.completed hidden: 128andundated hidden: 12— what the filters are keeping out. A filter nobody mentions reads as lost data, so it is always named.
Hovering the status line shows how many requests were made and how long loading took — worth quoting if you ever write to support.
Settings
Jira administrators can open Settings → Apps → Read-only Gantt to choose:
- The start and end date fields. By default the app detects them (see below), but you can name them explicitly — useful if your team keeps dates in a custom field of its own.
- Which issue link types count as dependencies.
Blocksby default; add any link type your project uses.
These settings are stored by the app and are never written back into Jira.
How date fields are detected
Jira has no single universal “start date”, so the app works down a ladder of increasingly weak signals, and stops at the first that answers.
- By field identifier.
duedateis a system field and is the same on every Jira site. - By field type. Advanced Roadmaps baseline start and end fields declare their own type, which does not depend on language.
- By what is actually filled in. Jira Software’s own “Start date” is an ordinary custom field whose identifier differs between sites, so the app samples a small number of issues to see which date field the team really uses.
- By name, in several languages — a last resort, used only to break a tie.
Housekeeping fields such as Created and Updated are excluded: they are always filled in and would win a popularity contest while meaning nothing.
The result is cached for a month, then checked again, in case the team has moved to a different field.
Troubleshooting
- “No start date field detected. Issues are shown by due date only.”
- Nothing on the project fills a recognisable start field, so everything with a due date is drawn as a milestone. Set the field explicitly in the app’s settings.
- An epic has no bar
- It has no dates of its own and has not been expanded yet, so there is nothing to derive a range from. Expand it and a dashed range appears.
- Rows appear with no bars
- Those issues have no dates. In team-managed projects, subtasks have no date fields at all, so they never get bars.
- “No issues match the current filters”
- Everything loaded is hidden by the Completed or Undated filter. The status line says how many.
- “Could not read issues from Jira”
- Usually a permissions problem — the account cannot browse this project. Reload to try again.
- “Jira rate limit reached. Retrying in…”
- Jira is throttling requests, typically after loading a very large project. The app waits and continues on its own; nothing is lost.
- “This app needs an active license”
- A Jira administrator can start a trial or subscribe from Settings → Apps → Manage apps.
Permissions and data
The app declares two permissions and no others:
read:jira-work to read issues, and
storage:app for its own settings. There is no write
permission of any kind, which is why the app cannot alter your data
even by mistake. You can see this list on the Marketplace before
installing.
It runs entirely on Atlassian infrastructure and sends nothing outside it. What it stores, and what it does not, is set out in the privacy policy; organisations needing a processor agreement can use the Data Processing Agreement.
Still stuck?
Write to support@goor.email. We answer within two business days. Quoting the status line helps.