TimeTracker  by DRYTRIX

Self-hosted time tracking and project management suite

Created 9 months ago
593 stars

Top 54.4% on SourcePulse

GitHubView on GitHub
Project Summary

TimeTracker is a self-hosted, web-based application designed for comprehensive time tracking, project management, and invoicing. It caters to freelancers, small teams, agencies, and privacy-conscious organizations seeking full control over their data and professional billing capabilities. The primary benefit is an integrated solution for managing billable hours, projects, and client finances without relying on third-party cloud services.

How It Works

The application is built on a modern Python (Flask) backend with PostgreSQL or SQLite databases, deployed via Docker and Docker Compose. It employs a clean frontend architecture using HTML5, JavaScript, and Tailwind CSS, with features like real-time updates via Flask-SocketIO and PDF generation for invoices using WeasyPrint. This stack enables a robust, scalable, and easily deployable solution for managing complex business workflows.

Quick Start & Requirements

  • Primary Install: Docker Compose is the recommended installation method. The quickest start involves docker-compose up -d for HTTPS (with self-signed certificates) or docker-compose -f docker-compose.example.yml up -d for plain HTTP development. A SQLite-based local test setup is available via docker-compose -f docker/docker-compose.local-test.yml up --build.
  • Prerequisites: Docker (20.10+), Docker Compose (2.0+), Git. Minimum 2GB RAM and 10GB storage recommended for small teams; 4GB RAM and 20GB storage for production. Ports 80/443 or 8080 must be available.
  • Links: Getting Started Guide, Installation Guide, Docker Compose Setup.

Highlighted Details

  • Offers native Flutter mobile (iOS/Android) and Electron desktop applications with offline support.
  • Features a complete invoicing system supporting PDF export, multi-currency, tax calculations, and Peppol & ZugFerd e-invoicing (EN 16931).
  • Includes a comprehensive CRM suite with sales pipelines, deal/lead management, and communication history.
  • Provides enterprise-grade security options like Role-Based Access Control (RBAC) and OIDC/SSO authentication.
  • Optimized architecture with service layer migration and significant query performance improvements (80-90% reduction in database queries).
  • Optional AI Helper integration with Ollama for enhanced functionality.

Maintenance & Community

The project is under continuous enhancement, with a detailed changelog available. Community interaction is facilitated through GitHub Discussions.

Licensing & Compatibility

TimeTracker is licensed under the GNU General Public License v3.0 (GPLv3). This license permits commercial use, modification, and distribution, but derivative works must also be licensed under GPLv3.

Limitations & Caveats

The SQLite database option is explicitly for development and testing only and is not recommended for production environments. The recommended HTTPS setup uses self-signed certificates, which will trigger browser security warnings unless manually accepted or configured with tools like mkcert.

Health Check
Last Commit

2 days ago

Responsiveness

Inactive

Pull Requests (30d)
46
Issues (30d)
7
Star History
16 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.