Precondition: Install Java Runtime Environment (JRE) 21, e.g. from Adoptium / Eclipse Temurin.
- Download the
.jar
file from the latest release - Launch it by
- double clicking or
- executing command
java -jar whiterabbitfx-signed.jar
Native packages already contain a Java Runtime Environment. You can download native packages for your platform from the latest release:
- Windows Installer:
.exe
- macOS Disk Image:
.dmg
- Ubuntu/Debian Package:
.deb
Install the .deb
file like this:
sudo dpkg --install whiterabbit_${version}_amd64.deb
This will install WhiteRabbit to /opt/whiterabbit/
. You can launch it by running
/opt/whiterabbit/bin/WhiteRabbit &
To remove WhiteRabbit, run
sudo dpkg --remove whiterabbit
White Rabbit will search for the configuration file in the following locations:
- The path specified via command line parameter
--config=<path>
time.properties
in the current working directory$HOME/.whiterabbit.properties
If the no config file is found, White Rabbit will create a default file at $HOME/.whiterabbit.properties
, using data directory $HOME/whiterabbit-data
.
The config file has the following content:
data = <path-to-data-dir> # e.g.: ../time-recording-data/
Restart WhiteRabbit after changing the configuration file.
locale
: format of date and time values as an IETF language tag, e.g.de
,de-DE
oren-GB
. Default: system locale.- Note: enter a locale with country code (e.g.
de-DE
) to get correct formatting of date and time, e.g. the calendar week.
- Note: enter a locale with country code (e.g.
current_working_time_per_day
: working time per day (default: 8 hours). Format: see below. Caution: This setting will only affect the future.- We recommend to configure this when starting to use WhiteRabbit.
mandatory_break
: mandatory break per day (default: 45 minutes). Format: see below. Caution: This setting will also affect the past, i.e. the overtime of all days will be re-calculated.- We recommend to configure this when starting to use WhiteRabbit.
reduce_mandatory_break_by_interruption
: Reduce the mandatory break by entered interruption (true
orfalse
, default:false
). If this istrue
, the mandatory break will be set to zero when the interruption is longer than the mandatory break.- We recommend to configure this when starting to use WhiteRabbit.
Enter duration values in the format used by Duration.parse(). Examples:
PT5H
: 5 hoursPT5H30M
: 5 hours and 30 minutesPT45M
: 45 minutesPT0M
: 0 minutes
To use activity tracking, create file projects.json
in your data directory with the following content:
{
"projects": [
{
"projectId": "p1",
"label": "Project 1",
"costCarrier": "P1001"
},
{
"projectId": "p2",
"label": "Project 2",
"costCarrier": "P1002"
},
{
"projectId": "general",
"label": "General",
"costCarrier": "P0001"
},
{
"projectId": "training",
"label": "Training",
"costCarrier": "P0002"
}
]
}
- Double click on a table cell (Type, Begin, End, Interruption and Comment) to edit it
- Interruptions must be entered as
01:23
for 1 hour, 23 minutes
- Interruptions must be entered as
- Close the window to minimize in the task bar:
- Won't work on weekends. To force working on a weekend, manually change the day type to
WORK
. - Public holidays can be calculated using plugin holidays-calculator or user can are set the day type to
HOLIDAY
manually. - If you manually change the working time in previous months you might need to adjust the
overtimePreviousMonth
field in the following months by selecting menu itemFile -> Update overtime for all months
. - Assumptions:
- Working time of 8h Monday to Friday
- Mandatory break of 45 minutes after 6 hours of working
WhiteRabbit logs to stdout and to $data/logs/white-rabbit.log
where $data
is the data directory defined in the configuration.
The default plugins holidays-calculator
and csv
are already included in the download packages. To install third-party plugins, copy them to $HOME/.whiterabbit/plugins/
.
Optionally you can configure holidays-calculator plugin to enable WhiteRabbit to display your personal selection of holidays.
Create a file named holidays.cfg
in your data directory defined in the configuration file of WhiteRabbit.
You can use one of the predefined holiday definition files or you can edit the file and add or remove holidays to your own taste, see the holiday-calculator documentation for a detailed description of the syntax.
Note: WhiteRabbit adds holidays provided by plugins only to new months without any time recordings. As soon as the user adds a time recording for a particular month, WhiteRabbit saves the time recordings for this month including any holidays whether provided by plugins or entered manually. After this point in time for the given month WhiteRabbit uses only on the saved file and will not ask any plugin to update the holidays.
CSVExport plugin supports the export of the current monthly report to a pre-configured path. The file names are hard coded, and have the format of YYYY-MM_working_time.csv
. Please note that all days must have a valid project assigned for the correct export.
-
Create a project configuration as described above.
-
Start the export in WhiteRabbit:
- Select the month that you want to export
- Select menu Reports > Project report
- Click the "Export to csv" button
Currently, you can configure the destination path, separator and flag in WhiteRabbit's configuration file:
csv.destination = ~/working_time_reports
csv.separator = /t
csv.filter_for_weekdays = True
The default values are:
csv.destination = $HOME
csv.separator = ","
csv.filter_for_weekdays = False