Jobber
Jobber is a minimalistic work time management program for the command line.
Quick Tour
Initialize New Database
Initialize the database into the application directory (e.g. ~/.config/jobber/jobber.json):
▶ jobber init
Initialize the Standard Templates
Install the standard invoice templates into the application directory (e.g. ~/.config/jobber/default/invoice.typ):
▶ jobber init templates
Create Company
Create (your) company.
▶ jobber create company
Create Workers
Create one or more workers:
▶ jobber create worker
Create Clients
Create one or more clients with the create command and add some information like address, VAT and a payment rate:
▶ jobber create client
Jobs
Create a job:
▶ jobber create job
Track Your Work
Then track your work with simple shell commands like:
▶ jobber start
or
▶ jobber end
Or be more precise and add a time:
▶ jobber start 12:15
List Work
▶ jobber list work
Job ID: ▶ 0
Worker: My Self (me)
Client: Late Capitalism Ltd. (lc)
Subject: work to do
Rate: $80.00 / hour
Interval: 15 min
Billing: -
Work: 60:00 hrs
Revenue: $4,800.00
╭─────┬──────────────────────┬───────┬───────────┬──────────────────────────────┬───────────╮
│ Pos │ Start │ End │ Duration │ Subject │ Tags │
├─────┼──────────────────────┼───────┼───────────┼──────────────────────────────┼───────────┤
│ 0 │ 2025 Wed Jun 4 21:30 │ 21:45 │ 15 min │ last year │ - │
│ 1 │ 2026 Mon May 4 21:30 │ 21:45 │ 15 min │ last month │ - │
│ 2 │ Thu Jun 4 14:00 │ 16:00 │ 2:00 hrs │ meeting in room #1 │ meeting │
│ │ │ │ │ second line │ │
│ 3 │ 16:15 │ 19:45 │ 3:30 hrs │ whole day │ - │
│ 4 │ 18:00 │ 18:15 │ 15 min │ work in the middle │ - │
│ 5 │ 21:30 │ 21:45 │ 15 min │ work in the middle but │ - │
│ │ │ │ │ with a very long subject │ │
│ │ │ │ │ which shall be wrapped │ │
│ │ │ │ │ automatically when displayed │ │
│ 6 │ 22:00 │ 23:30 │ 1:30 hrs │ work in the evening │ - │
│ 7 │ Fri Jun 5 10:00 │ 19:30 │ 9:30 hrs │ too long │ - │
│ 8 │ Sat Jun 6 02:00 │ 02:00 │ 24:00 hrs │ way too long │ - │
│ 9 │ Sun Jun 7 06:00 │ 07:00 │ 1:00 hrs │ one hour │ meeting │
│ 10 │ 09:45 │ 19:30 │ 9:45 hrs │ long work │ - │
│ 11 │ Tue Jun 9 01:00 │ 09:00 │ 8:00 hrs │ eight hours │ - │
╰─────┴──────────────────────┴───────┴───────────┴──────────────────────────────┴───────────╯
Use jobber show work to view a work unit.
Use jobber start to start work.
Calendar View
▶ jobber calendar
06/2026
╭────────────────────────────────────────────────────────────────╮
│ Day Sun Mon Tue Wed Thu Fri Sat Week │
│ - - - 7.5 9.5 22 39 │
│ 7 12.75 - 8 - - - - 20.75 │
│ 14 - - - - - - - - │
│ 21 - - - - - - - - │
│ 28 - - - - │
│ Jun 2026: 59.75 hrs │
╰────────────────────────────────────────────────────────────────╯
Job: 0
Create an Invoice
▶ jobber create invoice
On the first page it shows the list of jobs and on the following daily time sheets listing the working hours more exactly.
Generate PDF Invoices using typst template
▶ jobber export invoice 0
The output can look like this (using the template :marx_and_friends):

ANSI Color Support
Jobber supports ANSI Codes which colorize the output in the terminal for better readability.
Use jobber --no-ansi to turn them off.