Skip to content
An Alfred workflow for adding tasks to Todoist
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE
__mocks__ test: add integration tests Oct 9, 2018
dist chore(release): 5.7.0 [skip ci] Mar 16, 2019
src chore(project): fix typescript error Mar 16, 2019
test fix: allow labels to be hyphenated Nov 11, 2018
tools
.coveralls.yml build: update build process Oct 2, 2018
.editorconfig
.eslintrc.json
.gitignore
.nojekyll
.travis.yml ci: fix build failing on greenkeeper branch Dec 5, 2018
CHANGELOG.md
LICENSE docs: updated README.md Oct 14, 2018
README.md
code-of-conduct.md
cz-config.js
package-lock.json chore(release): 5.7.0 [skip ci] Mar 16, 2019
package.json ci(project): change asset name Mar 18, 2019
rollup.config.ts
tsconfig.json test: add integration tests Oct 9, 2018
tslint.json test: disable broken tslint rule Oct 27, 2018
typedoc.js

README.md

Build Status Coverage Status

ALFRED TODOIST WORKFLOW

Add and search Todoist tasks straight from Alfred. It uses Todoist v8 REST API.

Getting started Installation Configuration Usage Contributing

Getting started

  • For this workflow to work you need version 3.x of Alfred and a powerpack licence.
  • Node.js version 8.3 or up. If you install node.js in a non-standard way be advised that the workflow expects the binary to be in /usr/local/bin or /usr/bin

Installation

Download and import workflow.

Configuration

Name Notation Explanation
token ^[0-9a-fA-F]{40}$ (default empty) The todoist API token.
language en, da, pl, zh, ko, de, pt, ja, it, fr, sv, ru, es, nl (default en) The language for natural language date processing (by todoist) and to calculate time to complete a task.
cache_timeout A positive number (default 3600, an hour) The time (in seconds) until the cache is refreshed (until that time todoist information is stored locally to make things a little faster)
anonymous_statistics true or false (default true) Doesn't do much at the moment but I intent to use it to track installs

todo:setting token {api token}

Example: todo:setting token 2d2e2a334c5f36e7a7c43b46e

todo:setting language {language}

Example: todo:setting language nl

todo:setting cache_timeout {time in seconds}

Example: todo:setting cache_timeout 13

todo:setting anonymous_statistics {true or false}

Example: todo:setting anonymous_statistics false

Usage

Name Notation Explanation
task Any text except , The task title.
date A date string See the Todoist documentation for supported date formats.
project Either #personal or #[next actions] Use either the hashtag notation or bracket notation if the project name has spaces in it. The project name is case insensitive.
label @label Label names can't contain any whitespace characters. Labels are case insensitive.
priority Either p2 or !!2 A value between 1 (urgent) and 4 (normal)

Search for tasks

todos {query}

Query

Any search query one character or longer. Uses fuzzy search to find the tasks.

Example: todos car => returns (because of fuzzy search):

  • Rent car
  • New cat recipe's
  • Cut Gras tomorrow

Create task

todo {task}, {date}

Example: todo Get things done, tomorrow @ 9 Example: todo Build tree house #home !!2 @15min, tomorrow @ 9

Documentation

Read the docs.

Changelog

View CHANGELOG.md

Contributing

Instructions

- Fork and clone the repo
- Install dependacies
- Symlink to project workflow folder

  git clone https://github.com/YOUR-USERNAME/alfred-worflow-todoist
  npm install
  npm run setup:dev

Build

Create a new build with

npm run build

Run tests

Run Jest test suite with:

npm run test npm run test:prod

Or run a watcher with

npm run test:watch

Commits

For commits I follow the angular commit guidelines and use semantic release to automate builds, semver version updates and changelog creation. The way to make sure this all works is to run:

npm run commit

Which guides you through the motions

Code of conduct

code-of-conduct.md

License

License MIT © Martien Oranje

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.