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.3.tar.gz (13.3 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.3-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vacation_tracker-0.1.3.tar.gz
  • Upload date:
  • Size: 13.3 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.3.tar.gz
Algorithm Hash digest
SHA256 295258f5770349bef26fe4d443d980edb05ee46ab095a8ccf642ca20a68f9dac
MD5 97803439a49e547b7d83c7798fed67e8
BLAKE2b-256 6d3556a9bbc12175002b1ea6cfc98a49e009be5b994a37bcb2588e10272771ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for vacation_tracker-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1c7da36d8f37e0d72a0f2a14325523fa5e4220ccaf01b77fccf05db2e06477c5
MD5 f26d692e407bc73bf617d3bab275dac7
BLAKE2b-256 b31ebe0f9e360f30db84df68a9468fb8b4944a04eab8dd9e05ddd7ce405f8aef

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