Projects

Projects in Kimai are assigned to customers and are linked to activities, which are then used for time-records.

Project colors

Each project can be assigned its own color, for easier identification in the timesheets.

If no color is applied, the customers color will be used.

If an activity linked to the project does not have its own color, the projects color will be used (and as fallback again the customers color).

See customer documentation for the default color.

Project start date / end date

Explicit dates for the project ordering, start and end can be provided.

Setting a date for project start or end will place an implicit restriction for project selection when creating a timesheet record. If the date of the record falls before the project start or after the project end the project will not be listed in the dropdown menu.

This behavior is intended to avoid ghost bookings on not yet started or already finished projects. Note, that the future booking of timesheet records (if activated in the system settings “Allow time entries in the future”) is not possible in this case. If the booking of records is necessary, the team lead or admin can remove the date restriction in the project settings.

Time budget

The Time budget field supports entering data in the following formats:

Time span

  • Format: {hours}:{minutes}, {hours}:{minutes}:{seconds}
  • Description: Seconds are optional, leading zero can be skipped, overflow is supported for every field
  • Examples: 2:27 = 2 hours and 27 minutes, 3:143:13 = 5 hours and 23 minutes and 13 seconds

Time interval (ISO 8601)

  • Format: {hours}h, {hours}h{minutes}m, {hours}h{minutes}m{seconds}s
  • Description: Each section is optional, overflow is supported for every field, unit identifier can be written in lower and uppercase, seconds are supported but will be removed with activated rounding
  • Examples: 2h = 2 hours, 147m = 2 hours and 27 minutes, 3h14m = 3 hours and 14 minutes

Decimal duration

  • Format: {hours}, {hours,minutes in decimal}, {hours.minutes in decimal}
  • Description: Duration in hours, for decimal separator both . and , are supported, minutes need to be given as decimal portion (eg. 30 minutes = 0.5)
  • Examples: 1,5 = 1 hour and 30 minutes, 2 = 2 hours

Attention: Before Kimai 1.13 this format was treated as seconds (a format unusable for humans)

Time budgets will not be used to apply restrictions on timesheet records, but they are used for reports.

Visibility

By toggling the visibility on a project, you:

  • hide the project from all drop-downs
  • hide the project from the default list in the project administration
  • hide the activities for this project from all drop-downs, regardless of their visibility state
  • hide the activities for this project from the default list in the activities administration

Please note:

  • all currently linked objects will still show the project in the dropdown as pre-selected option
    • you can still change the project on timesheet records and activities, which used it before
    • you cannot create new activities for this project
    • you cannot create new timesheet records for this project
  • you can still access the hidden entries by changing the visibility filter on the toolbars

The visibility filter in the toolbar has three state:

  • Visible: Yes (all projects that are “really” visible, meaning: the project and linked customer are visible)
  • Visible: No (all projects that are exclusively invisible by their own visibility state)
  • Visible “empty” (all projects: not filtering on their own or the customers visibility)

The search drop-down supports filtering by the fields:

  • customer
  • visibility

Besides these filters, you can query for a free search term, which will be searched in the fields:

  • name
  • comment
  • orderNumber

Additionally you can filter for custom fields by using a search phrase like location:homeoffice. This would find all projects with the custom field location matching the term homeoffice.

The search terms will be found within the full value, so searching for office would find:

  • I love working in my office
  • Office
  • This office is beautiful
  • Our offices are very noisy

You can mix the search term and use multiple meta-field queries:

  • location:homeoffice projectname foo - find all projects matching the search term projectname foo with the custom field location matching the term homeoffice
  • location:homeoffice contract:foo projectname - find all projects matching the search term projectname with the custom field combination: location matching the term homeoffice and contract matching the term foo
  • location:homeoffice contract:foo - find all projects with the custom field combination: location matching the term homeoffice and contract matching the term foo