The resource-planning plugin adds a Resources item to the top menu with four cross-project views: a team heatmap (people × weeks, colored by utilization), a person timeline, project staffing, and a forecast & gaps view. It shows two things side by side and never merges them: bookings (the plan: hours/week a manager books a person onto a project) and issue load (the reality: assigned open issues spread across their start→due range).
Permissions
manage_resources: create and edit bookings, manage other people's leaves, see all planning views. Give this to planners/managers.- Everyone else can open Resources → Me (
/resources/me) to see their own timeline, and, if the setting allows, record their own leaves.
Assign the permission in Administration → Roles and permissions.
Global settings (Administration → Plugins → Resources → Configure)
| Setting | What it does | Default |
|---|---|---|
| Default weekly capacity | Hours/week assumed for users without an override | 40h |
| Unestimated issue default | Hours counted for an assigned issue with no estimate (shown as "unestimated") | 4h |
| Utilization bands | Thresholds for the heatmap colors: under / optimal / over | <70% · 70–100% · >100% |
| Users may enter own leaves | Lets non-planners record their own vacation/sick entries | On |
Set up availability (do this first)
Utilization is computed against true availability, capacity minus leaves minus holidays, so the numbers are only as good as this setup:
- Capacities: per-user weekly capacity overrides (part-timers, contractors) are admin-editable and effective-dated, so historical weeks keep the capacity that was true at the time.
- Holidays: enter your tenant-wide holiday calendar (date + name) once. Add per-project extras only where a project genuinely differs.
- Leaves: vacation/sick/other, as date ranges with an optional note. There's no approval workflow. Entries take effect immediately.
Reading the heatmap
Each cell is one person-week, colored by utilization band, hours on hover. Click a cell for the breakdown: bookings by project, issue load, leaves. Planners create and edit bookings inline from the grid. Issues without dates aren't spread into weeks. They're counted in an "unscheduled load" indicator instead, so nothing silently disappears.
Notes
- Issue load respects project visibility: users never see load from projects they can't access.
- Every view exports CSV, and the URL captures the current window/filters, so a filtered view can be bookmarked or shared.
- Utilization shows as "—" (nil) for weeks where a person has no available hours (full leave or holiday) rather than a misleading percentage.

