Todoist
Todoist is a simple web based to-do list that I quite like. Though it is not specifically designed for GTD, it is more of a help to me than the resource hog ThinkingRock ever was. Todoist is usable right away, but you'll be able to get much more out of it by reading the help sections, describing various shortcuts for adding, editing and structuring tasks, inserting links and so on. It also has a JavaScript API which I use to synchronize birthdays between my custom database and Todoist.
Todoist Anywhere
Todoist Anywhere is a bookmarklet that embeds Todoist into any website (especially Google Mail), potentially making it easier to put data from that site into your todo list.
My version
Context | Behaviour | Comment |
---|---|---|
In a new or empty tab | Opens the Todoist start page | Configure the start page via Todoist preferences |
On the Todoist startpage | Reloads the page | A normal bookmark wouldn't do that since Todoist uses URL fragments |
Anywhere else on todoist.com | Switches to the start page | This does not cause a reload |
Anywhere else on the web | Triggers the default behaviour of Todoist Anywhere |
Installation
Drag & drop the following link to your bookmark bar to install the bookmarklet: ✓ Todoist Tasks.
Source code
javascript:(function () { var location = document.location; var start_page = 'http://todoist.com/#start'; if (location.href == 'about:blank') { location.href = start_page; } else if (location.host.match(/(^|\.)todoist.com$/)) { if (location.href == start_page) { window.location.reload(); } else { location.href = start_page; } } else { var doc = top.document; if (top.js && top.js.document) doc = top.js.document; var script = doc.createElement('script'); doc.todoist_script = script; script.type = 'text/javascript'; script.src = 'http://todoist.com/anywhere/getJavaScript'; doc.getElementsByTagName('head')[0].appendChild(script); } })(); void(0);
If you have modified the bookmarklet, you can reformat the source code with the Online javascript beautifier. I used a bookmarklet maker to shorten the code somewhat.