Skip to main content

Track number of remaining vacation days.

Project description

Vacation Tracker

A command-line tool to track and manage vacation periods with support for holidays and date ranges. This tool helps you manage your vacation days, taking into account:

  • Vacation day entitlements per month
  • Public holidays based on country/region
  • Weekend exclusions
  • Year transitions and expiration dates
  • Detailed summaries and reporting

Installation

Install using pip:

pip install vacation-tracker

Configuration

First, create a new tracking configuration:

vacation-tracker new --days 2.5 --first-year 2023 --first-month 1 \
                     --last-year 2024 --last-month 12 \
                     --special-days 12-31 --special-days 01-02

This creates a vacation-periods.toml file with your vacation tracking settings. The configuration includes:

  • Days earned per month
  • Tracking period (start/end dates)
  • Country/region for holiday calculations
  • List of vacation periods

Example configuration:

days-per-month = 2.5
first-year = "2023-01" # Start tracking from January 2023
last-year = "2024-12"  # Track until December 2024
country = ["DE", "BY"]  # Germany, Bavaria region
categories = ["public", "catholic"]  # Holiday categories to consider
special-days = ["12-31"] # Special days to exclude from vacation calculation

Usage

Adding Vacation Periods

Add single day vacations:

vacation-tracker add "Doctor Appointment" --first 2023-05-15 

Add multi-day periods:

vacation-tracker add "Summer Holiday" --first 2023-08-01 --last 2023-08-15

Viewing Vacation Summary

Basic summary:

vacation-tracker show

This displays a table with:

  • Yearly entitlements
  • Utilized days
  • Remaining days
  • Expired allocations

Detailed view with individual periods:

vacation-tracker show --detailed

Example output:

 Year  Months  Entitlement  Real Util  Adj Util  Remaining
 2023  12      30           25         25        5 (expired)
 ├─ 01.08-15.08 (11): Summer Holiday
 └─ 15.05 (1): Doctor Appointment
 2024  12      30           0          0         30

Features

  • Automatically handles:
    • Weekend exclusions
    • Public holidays based on country/region
    • Vacation day expiration
    • Year transitions
    • Period overlaps prevention
    • Cross-year vacation splits
  • Configurable holiday categories
  • Support for partial day accumulation (e.g., 2.5 days/month)
  • Detailed vacation period tracking and reporting

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vacation_tracker-0.1.4.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vacation_tracker-0.1.4-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file vacation_tracker-0.1.4.tar.gz.

File metadata

  • Download URL: vacation_tracker-0.1.4.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vacation_tracker-0.1.4.tar.gz
Algorithm Hash digest
SHA256 0ef751c30eb94e8d1c69c572d1ab1b0267a8e58edb64d1ed1f564bb8bf8d6ac4
MD5 937362d4dfec711b1625ad625de9b501
BLAKE2b-256 f213c4afd23ece0877ab2c131d1de429f9e853feee2c6c234e36ba368c1fb76b

See more details on using hashes here.

File details

Details for the file vacation_tracker-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for vacation_tracker-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e7f1fa30c05b3e304b34df36e2933f29c97157e392da9adbf219af91a9366032
MD5 5a7e61870af7e080ac297a7297b53a3a
BLAKE2b-256 a6413398cf59448243f1897a393b4185e5dced643f89f882ca9ef5e7ffac3368

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page