Kimai is open-source time-tracking and invoicing software. I use it to keep track of how I am spending my time working on personal computer projects. It is very easy for me to  spend many hours working on a project in a single sitting without realizing just how long I've been there. 10 hours can pass in the blink of an eye. Kimai helps me to better manage my time. Kimai also helps me to track how much time I have spent on professional billable work for which I am hired, and then will conveniently produce an invoice for the client.

I host Kimai locally on my laptop, and installation and configuration are quite easy. Previous versions of Kimai could be installed by downloading the program files and copying them to your web server, however newer versions require installation using Composer. I followed the instructions found at:

https://www.kimai.org/documentation/installation.html

The only problems I encountered were that I needed to install and enable the "php-intl" module (which I determined by checking the "/kimai/var/log/prod.log" file), and then it took me a few tries to correctly configure the Apache virtual host file. The example virtual host found in the Kimai documentation gave me some problems:

https://www.kimai.org/documentation/webserver-configuration.html

so I ended up using a simpler version:

<VirtualHost *:80>
   ServerName kimai.localhost

   DocumentRoot /var/www/html/kimai/public
   <Directory /var/www/html/kimai/public>
       AllowOverride All

       Order Allow,Deny
       Allow from All
       
       FallbackResource /index.php
   </Directory>
   <Directory /var/www/html/kimai>
       Options FollowSymlinks
   </Directory>

   <Directory /var/www/html/kimai/public/bundles>
       FallbackResource disabled
   </Directory>
   
   ErrorLog /var/log/kimai_error.log
   CustomLog /var/log/kimai_access.log combined

</VirtualHost>