- access to https://www.rememberthemilk.com todo lists via their API
- analyze done and pending tasks
- caching to reduce API usage
Disclaimer: This code uses the Remember The Milk API but is not endorsed or certified by Remember The Milk.
register for using the Remember The Milk API here: https://www.rememberthemilk.com/services/api/ and obtain
api_keyshared_secret
store these info in rememberthemilk.ini (see rememberthemilk.ini.example)
pip install -r requirements.txtoptionally: ruff and pre-commit
pip install ruff pre-commitoptionally: pytest coverage report
pip install pytest-cov
pytest --cov
# or
pytest --cov --cov-report=html:coverage_reportrun auth.py once and add the resulting token to rememberthemilk.ini
- HTML table of completed tasks
- appreciate what you have achieved
- count and sums per calendar week
- HTML table of overdue tasks
- ranked by product of overdue days x priority, to focus on most urgent ones
- display time estimation in minutes to motivate you for solving the minor ones right away
pip install streamlit watchdogstreamlit run src/app.pysee original post at https://www.rememberthemilk.com/forums/tips/31034/
I use RTM for several years now, mostly for keeping track of periodic todos, e.g. maintenance, backups, doc appointments, cleaning my home, ... and also for one-timers I tend to postpone.
See the RTM forum for other tips.
- I use some different lists to group tasks
- I use only few tags, mostly lists instead
- I do not set locations, lists instead
- I set date, prio and estimate to all tasks, especially to periodic tasks, to empower nice smart lists
- for most repetitive tasks I use after instead of each (e.g. watering the flowers)
- for once-a-year tasks I add notes for the details I tend to forget until its due next time
What I love most of RTM are the dynamic smart lists. Here some examples:
- big Projects ->
timeEstimate:">1 hour" - high Prio ->
priority:1 - one-timers ->
isRepeating:false - series ->
isRepeating:true AND NOT list:MyListToExclude - minor (low handing fruits) ->
dueBefore:"1 week" and timeEstimate:"<15 minutes" AND NOT list:MyListToExclude - done 7d (to celebrate what I accomplished) ->
completedWithin:"7 day of today" - created more than a week ago ->
NOT addedWithin:"1 week of today"
Smart lists that remind me of adding missing date, prio and estimate
- no Date ->
due:never AND NOT addedWithin:"1 week of today" - no Prio ->
priority:none AND NOT addedWithin:"1 week of today" - no Estimate ->
hasTimeEstimate:false AND NOT addedWithin:"1 week of today" - no List ->
list:Inbox - no Tag ->
isTagged:false
see https://www.rememberthemilk.com/help/?ctx=basics.search.advanced
- I use one list for my goals
- each goal has a prio (= short, medium, far)
- I do not use tags to categorize, but simple prefix in the title, e.g. "JOB", "SPORT"
- to sort the goals by category, I just sort the list by task name (thanks to prefix)
- I usually sort the list by prio
- once a month I check the medium prio goals
- once a quarter I check the low prio goals
- to work towards a goal, I create small repetitive tasks (using after, not every), that use the url field to link to the goal.