Version 1.17 released

Radically improved exporting to CSV and JSON files. Automate exporting using AppleScript. More explanatory user interface.

Avatar of Niels Mouthaan
Niels Mouthaan

Improved exporting to CSV and JSON files

For a long time, Daily includes the ability to export data to CSV and JSON. Users rely on this to import hours tracked using Daily into 3rd party software. Examples include invoicing suits, project management tools and HR portals. If you depend on Daily's exporting capability, we have some good news for you. Based on user feedback, we introduced the following changes:

Configurable duration format

The format of the duration shown in both exported CSV and JSON files is configurable. The following formats are supported:

  • Total seconds (e.g. 1580)
  • Total minutes (e.g. 26.33)
  • Total hours (e.g. 0.44)
  • H:mm:ss (e.g. 0:26:20)
  • m:ss (e.g. 26:20)
  • H:mm (e.g. 0:26)
  • Text (e.g. 0h 26m)

The decimal separator used in CSV files is localized, meaning your favorite spreadsheet software can import data flawlessly.

Apply time rounding

Previously, time rounding was automatically applied, by respecting the setting in Daily's preferences. Now, time rounding can be disabled when exporting. It still respects the setting in Daily's preferences when enabled.

Export dialog

Automate exporting using AppleScript

Above mentioned changes are also propagated to AppleScript. Below you can find a few examples. Note that we still support the older AppleScript scripts and their resulting formats, so there's no need to update your tooling.

Summary with format "H:mm:ss" and time rounding to CSV

tell application "Daily"
set LastWeek to (current date) - (7 * days)
set Today to (current date)
set Location to choose folder with prompt "Please select a folder where you want to store the exported files:"
export csv with report "summary" from LastWeek to Today with delimiter "," with duration format "H:mm:ss" to file POSIX path of Location & "summary.csv" with time rounding
end tell

Daily overview with format "minutes" and without time rounding to CSV

tell application "Daily"
set LastWeek to (current date) - (7 * days)
set Today to (current date)
set Location to choose folder with prompt "Please select a folder where you want to store the exported files:"
export csv with report "daily" from LastWeek to Today with delimiter "," with duration format "minutes" to file POSIX path of Location & "daily.csv" without time rounding
end tell

Summary with format "text" and with time rounding to JSON

tell application "Daily"
set LastWeek to (current date) - (7 * days)
set Today to (current date)
set Location to choose folder with prompt "Please select a folder where you want to store the exported files:"
export json with report "summary" from LastWeek to Today with duration format "text" to file POSIX path of Location & "summary.json" with time rounding
end tell

Daily overview with format "seconds" and without time rounding to JSON

tell application "Daily"
set LastWeek to (current date) - (7 * days)
set Today to (current date)
set Location to choose folder with prompt "Please select a folder where you want to store the exported files:"
export json with report "daily" from LastWeek to Today with duration format "seconds" to file POSIX path of Location & "daily.json" without time rounding
end tell

Summary overview with format "minutes" and with time rounding printed as JSON

tell application "Daily"
set LastWeek to (current date) - (7 * days)
set Today to (current date)
print json with report "summary" from LastWeek to Today with duration format "minutes" with time rounding
end tell

Other AppleScript examples can be found on our Support & FAQ page.

More explanatory user interface

We've made the user interface more explanatory by adding context-aware messages and banners. This include various dismissible tips & tricks (e.g. explaining how entries can be edited) and app & license status (e.g. informing you Daily's license is soon expiring or already has expired). Many of these messages include call-to-actions to learn more or take immediate action. The goal of these messages is to make Daily easier to understand.

Download Daily on the App Store