A simple, command-line period tracker with statistical analysis and prediction.
Project description
Simple Period Tracker
A simple, command-line period tracker with statistical analysis and prediction.
Features
- Calculates cycle lengths and provides statistics (mean, median, standard deviation).
- Predicts next period and ovulation dates with confidence intervals.
- Displays an ASCII calendar in the terminal with predictions.
- Generates a graphical calendar as a PDF file.
- Reads data from CSV files or standard input.
- Optional support for
pandas,numpy,scipy, andmatplotlibfor more advanced analysis and visualization.
Installation
You can install simple-period-tracker using pip:
pip install simple-period-tracker
Or, if you have cloned the repository, you can install it with poetry:
poetry install
Usage
simple-period-tracker [OPTIONS] [FILE]
Arguments
FILE: Path to the CSV file with period dates. Use--to read from stdin.
Options
--luteal-phase DAYS: Days between ovulation and period (default: 14, or calculated from data).--safe-days-buffer DAYS: Days after ovulation confidence interval to start 'safe' days (default: 5).--period-duration DAYS: Default period duration in days (default: 4).--calendar: Display an ASCII calendar with predictions.--months MONTHS: Number of months to display in the calendar (1-3, default: 3).--no-color: Disable color output in the calendar.--hatch: Use hatch patterns instead of filled colors for events in the figure.--figure-path PATH: Path to save the calendar as a PDF figure.--ci-method METHOD: Method for period/ovulation confidence interval: 'minmax' (default) or 'normal'.
CSV File Format
The CSV file should have a header row and at least one column for the period start dates. The columns can be in any order, but the header must contain period_start, period_end, and ovulation.
Example:
period_start,period_end,ovulation
2023-01-01,2023-01-05,2023-01-15
2023-01-30,2023-02-03,2023-02-13
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
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 simple_period_tracker-0.1.0.tar.gz.
File metadata
- Download URL: simple_period_tracker-0.1.0.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Linux/6.17.4-200.fc42.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5b23d2171d8e7a38c7b43d1d9b4053391c095e793d94062c3ab348efcb584a67
|
|
| MD5 |
681e412714a4b80059ab82f39223ff84
|
|
| BLAKE2b-256 |
b42c328976ac2eb3a30652597f3b49ea7257cf85a9ecf912afadcd7ac3e776e2
|
File details
Details for the file simple_period_tracker-0.1.0-py3-none-any.whl.
File metadata
- Download URL: simple_period_tracker-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Linux/6.17.4-200.fc42.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b8840d17d21e35b0de3cab13553d632f0e98c1b4ce208b591ccd1fe69a9e893
|
|
| MD5 |
2914b7c6181856e68a65772dabeb3e8b
|
|
| BLAKE2b-256 |
e796b54a8491985eeffc9825e94029e1a1546631f6912437f99d5243d077e50d
|