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
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, 1] # 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
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vacation_tracker-0.1.0.tar.gz.
File metadata
- Download URL: vacation_tracker-0.1.0.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96afd7338633090d18eed2fd73e268cecc5d9237f82ef3eef1225e3ecf9f9a82
|
|
| MD5 |
fa0573420dac29faa13d9cfd5b1ace3f
|
|
| BLAKE2b-256 |
a5b6bde31268e24df3529b21939b830c646403213c1402f27674cc058c640077
|
File details
Details for the file vacation_tracker-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vacation_tracker-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1df66f90d47c96d96e4bad7570562c3ce36f188d86ac137c7be8ae1562fe0f2a
|
|
| MD5 |
a384d8cd951c2211e1be29447d14bb9b
|
|
| BLAKE2b-256 |
3c422848948dab36105962a0f47a24330828f59f720e231f9b4cc18a4fdcd6fb
|