Skip to main content

A simple, command-line period tracker with statistical analysis and prediction.

Project description

Simple Period Tracker

GitLab Repository

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, and matplotlib for 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


Download files

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

Source Distribution

simple_period_tracker-0.1.2.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

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

simple_period_tracker-0.1.2-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file simple_period_tracker-0.1.2.tar.gz.

File metadata

  • Download URL: simple_period_tracker-0.1.2.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.19 Linux/5.15.154+

File hashes

Hashes for simple_period_tracker-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6ddee7c283cbc618c791aeac167cf0f78c9f86678747dbe40f78c48e138b2af5
MD5 b85639a048d25caaeb190abe94e4830b
BLAKE2b-256 63b95add7f0a4153aed95f8295d05d8fd28c75e9a849c1ad8a0455f33c406b6e

See more details on using hashes here.

File details

Details for the file simple_period_tracker-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for simple_period_tracker-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 571e86e793ce2bf88b0c456cbeb41d333eb25099a09e892de01ad8074c957b76
MD5 3e789f711d3ec67d4d6c177af11f0ca8
BLAKE2b-256 9f7bc4bd88f358e6744b7832c471af11431755e4700cca30b86bd482906d146d

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