This is the code repository for the @jalexw/invoice-hours-counter tool. Export an iCalendar calendar and use it to extract how many hours you've recorded on a project!
I built this to allow me to easily track my freelance hours directly in iCalendar-- then I can just export the calendar events, filter to only the appropriate events, and automatically count my hours up to prepare an itemized invoice!
Not tech-savvy? No problem! Just upload your files to the @jalexw/invoice-hours-counter website! We won't save any of your calendar data (all processing happens directly in your browser)!
Tech-savvy? There's a CLI that you can use to run this locally!
# download this repository
git clone https://github.com/jalexw/invoice-hours-counter.git && cd invoice-hours-counter
# install dependencies with the 'bun' package manager (https://bun.sh)
bun install
# run the cli, passing the path to your exported .ics file and any filters!
bun run cli count-hours ./PathToMyFreelanceWorkCalendar.ics --project Project1 --after 2025-03-09T00:00:00Z --before 2025-03-16T00:00:00Z --csv ./my-invoice-hours-output-file-path.csv# install dependencies first `bun install`
bun run web:dev
# open the development server: http://localhost:3461# install dependencies first `bun install`
bun run web:buildContributions are welcomed! Feel free to make a pull request! 🤗
Not tech savvy but appreciate the work? Feel free to buy me a coffee at the following link:
