Google Tasks is a service by Google partially integrated in Calendar. It had a separate lightweight JS frontend perfect for a using in a browser sidebar, which had been shut down:
This project reimplements everything in that frontend from scratch. It uses Google Tasks API to access Tasks but can support different backends.
Try it here on GitHub (local storage only)
- Runs in the browser, locally or self-hosted (for Google Tasks)
- Works with Google Tasks
- Implements most Google Tasks IG interface features: inline editing, enter-splits, backspace-deletions, tab/shift-tab, keyboard navigation, move to list, task list commands. If something is missing, file an issue.
- Async requests, fast UI with neat activity indicator
- Export tasks
Once Google shuts down Tasks which they will eventually do because they shut down everything, I might write a CalDAV Tasks backend.
Runs as a:
- Chrome extension (on a separate page)
- Firefox/Opera extension (in a sidebar)
- Self-hosted — on your own domain
- Firefox/Opera extension for a self-hosted version (in a sidebar)
- Standalone — as a local HTML file, or here on GitHub
Different backends are available in each case:
|Google Tasks||Browser (sync)||Browser (local)|
|Chrome extension (page)||+||+||+|
|Firefox extension (sidebar)||+||+|
|Self-hosted||+||+ (less safe)|
|Self-hosted in sidebar||+||+ (less safe)|
|Local file or github||+ (less safe)|
Browser backends are completely offline. The sync version is synchronized by the browser between your different PCs. The "less safe" versions use Local Storage instead of Extension's Storage and it's easy to reset by cleaning cookies, so I wouldn't store anything important.
The browser extensions
Chrome: Extension page
Firefox: Addon page
Firefox Sidebar for Standalone version: Addon page
To load from sources here:
Chrome: Go to Extensions page and enable "Developer mode". Press "Load unpacked extension" and point it to the folder with Tasks IG.
Firefox: Go to
about:debugging, check "Enable extension debugging" and press "Load temporary extension". Point it to the
You need a domain.
Upload the contents (excluding docs and extension) under some URL on your server.
applicationin Google API Developer Console and create
OpenID Clientfor it. Add your domain as a trusted domain for the
application, and your full URL as an allowed origin for that
OpenID Client. You may restrict
API Keytoo but it's not required and first try without it.
config.jsand insert your API key and Client ID there.
Access the URL and press "Authorize with Google". (The local storage version should work from step 2).
Why all these complications? Google Tasks backend requires having an origin hostname.
Plan B: Find someone who hosts it and use their instance (if you trust them).
You can put your self-hosted extension in a Firefox sidebar. Use the extension in the
webpanel folder and set the URL in the options.
index.html or access it on Github.
License and attribution
This project uses icons and other resources which might have their separate licenses. Please see LICENSE.txt for licenses and attribution.