Open-source, self-hosted time-tracking web app for timesheets, invoicing and reports, used by freelancers and companies.
DRYTRIX/TimeTracker
Self-hosted time tracking and invoicing app for freelancers and teams, with timers, projects, PDF invoices and Peppol e-invoicing.
Open-source alternative to:Toggl Track
Clockify
- Stars
- 640
- Forks
- 82
- Open issues
- 4
- Last commit
- 2 hours ago
What is it?
TimeTracker is a self-hosted, web-based application for logging work hours, managing projects and clients, and turning tracked time into invoices. Timers run on the server, so they keep going after the browser is closed, and the app is deployed with Docker Compose alongside PostgreSQL.
Beyond time tracking, it includes invoice generation from logged hours, PDF export, expense and payment tracking, budget alerts, and reports with CSV and PDF export. For e-invoicing, it can send invoices over the Peppol network and embed EN 16931 XML (ZugFerd / Factur-X) in PDFs. Multi-user access uses role-based permissions, with username-only login or OIDC/SSO. A REST API with token scopes, a Flutter mobile app and an Electron desktop app are also provided.
Key features
- 01Server-side timers that keep running after the browser closes
- 02Invoices generated from tracked time, with PDF export
- 03Peppol sending and ZugFerd / Factur-X embedding (EN 16931)
- 04Expense, payment and budget tracking with alerts
- 05Role-based permissions with username or OIDC/SSO login
- 06REST API with token scopes, plus Flutter and Electron apps
Use cases
- Freelancers billing hours across several clients
- Small agencies tracking project budgets and client invoices
- Organizations in Peppol-based e-invoicing markets that want to self-send invoices
- Homelab or NAS users who want time tracking without per-seat SaaS fees
Quick start
- 1
Download the compose file, create the .env with a secret key, and start the stack with Docker Compose
curl -fsSLO https://raw.githubusercontent.com/drytrix/TimeTracker/main/docker-compose.nas.yml - 2
Generate the SECRET_KEY into .env
echo "SECRET_KEY=$(openssl rand -hex 32)" > .env - 3
Start the app with Docker Compose
docker compose -f docker-compose.nas.yml up -d - 4
Open http://localhost:8080 in a browser; the first login creates the admin account
Things to know
- Requires Docker to run the default setup.
- Peppol e-invoicing setup involves additional configuration via the Peppol Bridge.
In collections
Topics
FAQ
- What is TimeTracker?
- Self-hosted time tracking and invoicing app for freelancers and teams, with timers, projects, PDF invoices and Peppol e-invoicing. TimeTracker is a self-hosted, web-based application for logging work hours, managing projects and clients, and turning tracked time into invoices. Timers run on the server, so they keep going after the browser is closed, and the app is deployed with Docker Compose alongside PostgreSQL.
- Is TimeTracker free to use? What license does it have?
- TimeTracker is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is TimeTracker still maintained?
- Actively maintained. The last commit to TimeTracker was on Nov 7, 2026.
- What can I use TimeTracker for?
- Freelancers billing hours across several clients Small agencies tracking project budgets and client invoices Organizations in Peppol-based e-invoicing markets that want to self-send invoices Homelab or NAS users who want time tracking without per-seat SaaS fees
- How do I install TimeTracker?
- Download the compose file, create the .env with a secret key, and start the stack with Docker Compose: curl -fsSLO https://raw.githubusercontent.com/drytrix/TimeTracker/main/docker-compose.nas.yml Generate the SECRET_KEY into .env: echo "SECRET_KEY=$(openssl rand -hex 32)" > .env Start the app with Docker Compose: docker compose -f docker-compose.nas.yml up -d Open http://localhost:8080 in a browser; the first login creates the admin account
- Where can I get TimeTracker?
- The source code and installation instructions are on GitHub: https://github.com/DRYTRIX/TimeTracker
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A slim, self-hosted invoicing application that generates e-invoices in Factur-X, FatturaPA and UBL 2.1 formats.
Offline time tracker for macOS and Windows that logs work hours, projects, and billing without cloud accounts or registration.
Open-source time tracking app for freelancers and agencies, with projects, tasks, clients, billable rates and self-hosting.
Self-hosted open-source invoicing app for freelancers and small businesses to create invoices, track payments and expenses.
Offline-first, open-source invoice and quotation app for freelancers and small businesses, with PDF export and local SQLite storage.