Skip to content

deanmalmgren/todoist-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

todoist-tracker

This project is intended to make it easy to track various metrics for todoist, including things like:

  • how many tasks are currently OVERDUE (including today)
  • how much time is allocated to currently OVERDUE (including today) tasks
  • the priority level of currently OVERDUE (including today) tasks

todoist-tracker is a hack to make it easy to quickly gauge how "underwater" you are and how productive you've been. It is intended to be set up as a cronjob with a crontab entry like:

45 21 * * * todoist-tracker overdue n
45 21 * * * todoist-tracker overdue time
45 21 * * * todoist-tracker overdue priority

which runs todoist-tracker every night at 9:45 p.m. By default, the resulting metrics are stored in a google spreadsheet for subsequent analysis. Depending on the version of requests that is installed via python dependencies, you may also want to use PYTHONWARNINGS=ignore somewhere in your crontab to avoid being sent warnings every time the script is run.

quick start

  1. install todoist-tracker from pypi:

    pip install todoist-tracker
  2. get your todoist api token from the todoist Settings > Account > API token.

  3. place your todoist api token in a todoist.json file in the repository root that looks like this:

    {
        "token": "your-token"
    }
  4. get your google spreadsheet credentials by following the gspread instructions.

  5. place your google spreadsheet credentials in a google.json file in the repository root and add your workbook_url to the JSON:

    {
      ...
      "workbook_url": "https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0"
    }
  6. 💥 For usage instructions, see

    todoist-tracker -h

development

  1. instantiate virtual environment

    mkvirtualenv todoist-tracker
    pip install -r requirements/python-dev
  2. add the bin/ directory to your virtualenv PATH and the project root to your PYTHONPATH with

    # setup paths on virtualenv activation
    echo 'export __PATH_TODOIST_TRACKER=$PATH' > ~/.virtualenvs/todoist-tracker/bin/postactivate
    echo 'export PATH=$PATH:'`pwd`'/bin' >> ~/.virtualenvs/todoist-tracker/bin/postactivate
    echo 'export PYTHONPATH=$PYTHONPATH:'`pwd` >> ~/.virtualenvs/todoist-tracker/bin/postactivate
    
    # setup paths on virtualenv deactivation
    echo 'unset PYTHONPATH' > ~/.virtualenvs/todoist-tracker/bin/predeactivate
    echo 'export PATH=$__PATH_TODOIST_TRACKER' > ~/.virtualenvs/todoist-tracker/bin/predeactivate
  3. follow the quick start instructions above to get your todoist credentials.

About

track various metrics for todoist

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages