Capture

Save any page as a task, from your phone or your browser.

Many tasks start as "deal with this page later". OpenTodo can receive a page from three places, and all of them open the same capture screen on your own server: the title becomes the task (and is a normal quick-add line, so tomorrow #work p1 works in it), the selected text and the link become the description, and nothing is saved until you press Enter. Capturing pages

What the capture screen proposes

  • Title: the page title, or the link's host name
  • Description: the selected or shared text, then the link
  • Project: the Inbox by default, or any project you pick

Saving creates an ordinary task on the device first and syncs it like any other, so it works with no network and reaches your other devices when the network returns. How it works

The share sheet on your phone

Install the app, and OpenTodo appears in the share menu of other apps. Share a link or some text and it lands in the capture screen on your own server, ready to become a task. Works offline once the app has been opened online.

Share sheet

The browser extension

A toolbar button, a context-menu entry and a keyboard shortcut (Alt+Shift+O by default) for Chrome, Edge, Brave, Vivaldi and Firefox 121 or later. Each opens the capture screen with the current tab's address, title and selection.

Browser extension

The bookmarklet

One button for the bookmarks bar of any desktop browser, generated for your server in Settings → Capture. Click it on any page and a small popup proposes the task, prefilled with the page's address, title and your selection.

Bookmarklet

The browser extension

Small on purpose, and not in the stores yet

The extension stores only your server's address. It holds no token or password, has no host permissions and no content scripts, and makes no network requests itself: the only traffic is the capture popup you open, which loads your own server. Privacy and permissions

It is not published in the browser stores yet, so it installs as an unpacked extension from a release download. A signed Firefox build is a release task. In the docs

Install it

  1. Download opentodo-browser-extension.zip from a release and unzip it. Browser extension
  2. Chromium browsers: open chrome://extensions, turn on Developer mode, choose Load unpacked and pick the unzipped folder. Browser extension
  3. Firefox: open about:debugging#/runtime/this-firefox, choose Load Temporary Add-on… and pick manifest.json from the folder. Temporary add-ons are removed when Firefox restarts. Browser extension
  4. On first use it asks for your server's address, saves it, and continues the capture you started. Browser extension

The share sheet, by platform

The browser adds OpenTodo to the share menu once the app is installed. Support differs by platform: share sheet in the docs.

Android (Chrome, Edge, Samsung Internet)
Share from any app → OpenTodo, once the app is installed.
Windows and ChromeOS (Chrome, Edge)
Share from apps that use the system share dialog; the extension and bookmarklet in the browser.
macOS (Chrome, Edge)
Support for receiving shares varies by version; the bookmarklet or the extension work everywhere.
iPhone and iPad (any browser)
Safari does not offer web apps in its share sheet; use the bookmarklet in Safari.
Firefox (all platforms)
Firefox does not install web apps as share targets; use the extension or the bookmarklet.

Files and images cannot be shared yet; the app is offered for text and links only. A shared link is kept only when it starts with http or https, and the capture screen never opens it. Limits and safety

Try it in the demo.

Open the demo on your phone, add it to the home screen, and share a page into it. The sandbox is private and deleted after two hours.

OpenTodo is free and open source, with no paid tier. If it helps you, a star on GitHub helps other people find it, and a coffee helps keep it going.

Buy me a coffee