Skip to content

wasi0013/PyTM

Repository files navigation

PyTM - Logo

PУΓM - A CLI time tracker for projects with invoice generation

image1 Documentation Status Supported Python Versions List of Contributors Download Stats Documentation Status image2

Goals

Project time management, billing, and invoice generation.

Preview

PyTM - Preview

Screenshots

PyTM - Screenshot

PyTM - Invoice

Installing PyTM

  • First download and install pyenv. Use the command:

    curl https://pyenv.run | bash
  • Next, install Python 3.12 using the command:

    pyenv install 3.12.0

    Alternatively, you can skip pyenv installation and download python 3.12 or above from the official website and setup a virtualenv as well.

  • Next, install PyTM from PyPI using pip:

    python -m pip install python-pytm

Check the version by typing the following in your terminal.:

pytm --version

Basic commands

To see the available commands type:

pytm --help
  • Start a new project with a default name: pytm project start
  • Start a new project with the given name or, start an existing project: pytm project start PROJECT_NAME
  • Rename a project: pytm project rename OLD_PROJECT_NAME NEW_NAME
  • Remove a project: pytm project remove PROJECT_NAME
  • Check the status of a project: pytm project status PROJECT_NAME
  • Check the list of tasks and duration of a project: pytm project summary PROJECT_NAME
  • Finish active project: pytm project finish
  • Pause active project: pytm project pause
  • Abort active project: pytm project abort
  • Start a new task with a default name in the current active project: pytm task start
  • Start a new task with the given name or existing task in the current active project: pytm task start TASK_NAME
  • Rename a task of the active project: pytm task rename OLD_TASK_NAME NEW_NAME
  • Remove a task: pytm task remove TASK_NAME
  • current task's status: pytm task status
  • Finish active task: pytm task finish
  • Pause active task: pytm task pause
  • Abort active task: pytm task abort

Others

Configure project, user and invoice info:

pytm config project PROJECT_NAME
pytm config user
pytm config invoice

Generate Invoice:

pytm invoice auto PROJECT_NAME
pytm invoice manual

Check version:

pytm --version
pytm -v

Check summary of all the projects:

pytm summary

For a list of all the available commands try:

pytm --help

Running the tests

  • Clone this repository
  • Install dependencies:

    pip install -r requirements.txt
  • run the tests:

    py.test

Notes