Toggl is a fantastic, simple time tracking application. It allows the user to start and stop a timer, add a note, and attach it to clients and projects, and generate reports. However, the report generated by Toggl was not quite sufficient to use as an invoice. So we decided to write a script that would parse our Toggl reports and generate nicely formatted invoices in HTML and PDF formats.
We were quite pleased with the results and decided to release them to the open source community, on GitHub.
Later, we added additional features, including exporting directly from the Toggl API, rather than from a flat file, as well as the ability to export time entries from Toggl to Freshbooks time tracking.
For this project we used Ruby to write the script, and took advantage of some great Ruby gems to generate PDFs, parse HTML templates, parse CSV, and handle YML config files.