All Projects → sachaos → Todoist

sachaos / Todoist

Licence: mit
Todoist CLI Client. I ❤️ Todoist and CLI.

Programming Languages

go
31211 projects - #10 most used programming language
golang
3204 projects

Labels

Projects that are alternatives of or similar to Todoist

Ecsctl
Command-line tool for managing AWS Elastic Container Service and Projects to run on it.
Stars: ✭ 15 (-98.4%)
Mutual labels:  cli
Fugitive
Simple command line tool to make git more intuitive, along with useful GitHub addons.
Stars: ✭ 20 (-97.87%)
Mutual labels:  cli
Newsreap
Usenet Framework that supports posting, indexing and retrieving
Stars: ✭ 21 (-97.77%)
Mutual labels:  cli
Oval
oval: CLI for (O)penAPI Specification document (val)idation.
Stars: ✭ 15 (-98.4%)
Mutual labels:  cli
Singlefilez
Web Extension for Firefox/Chrome/MS Edge and CLI tool to save a faithful copy of an entire web page in a self-extracting HTML/ZIP polyglot file
Stars: ✭ 882 (-6.17%)
Mutual labels:  cli
Lab
Lab wraps Git or Hub, making it simple to clone, fork, and interact with repositories on GitLab
Stars: ✭ 911 (-3.09%)
Mutual labels:  cli
Weather
Weather via the command line.
Stars: ✭ 881 (-6.28%)
Mutual labels:  cli
Durt
Command line tool for calculating the size of files and directories
Stars: ✭ 27 (-97.13%)
Mutual labels:  cli
Star
A STock Analysis and Research tool for terminal(cli) users. 技术控和命令行爱好者的 A 股辅助分析工具。
Stars: ✭ 887 (-5.64%)
Mutual labels:  cli
Lsankidb
☆ `ls` for your local Anki database.
Stars: ✭ 21 (-97.77%)
Mutual labels:  cli
Dsafio
Practicing tool for coders 👩‍💻🤖👨‍💻💥🚀
Stars: ✭ 15 (-98.4%)
Mutual labels:  cli
Github Trending Cli
A Python package which lists trending repositories and developers from Github
Stars: ✭ 15 (-98.4%)
Mutual labels:  cli
Life
Conway's Game of Life written in Swift 👾
Stars: ✭ 21 (-97.77%)
Mutual labels:  cli
Cht.exe
cht.sh libcurl client for windows XP+ with changed colorization
Stars: ✭ 15 (-98.4%)
Mutual labels:  cli
Drupal Console
The Drupal CLI. A tool to generate boilerplate code, interact with and debug Drupal.
Stars: ✭ 913 (-2.87%)
Mutual labels:  cli
Create Ava
Add AVA to your project
Stars: ✭ 14 (-98.51%)
Mutual labels:  cli
Nord Guake
An arctic, north-bluish clean and elegant Guake color theme.
Stars: ✭ 20 (-97.87%)
Mutual labels:  cli
Bashmultitool
A library for bash shell program containing useful functions. Can be imported into scripts to create colourful and functional scripts and TUIs.
Stars: ✭ 27 (-97.13%)
Mutual labels:  cli
Viu
Simple terminal image viewer written in Rust.
Stars: ✭ 911 (-3.09%)
Mutual labels:  cli
Make Space
💾 [WIP] Free up space from the command line
Stars: ✭ 21 (-97.77%)
Mutual labels:  cli

Todoist CLI client

Todoist CLI Client, written in Golang.

Description

Todoist is a cool TODO list web application. This program will let you use the Todoist in CLI.

color image

Demo (with peco)

Add Task

Add task

Close Task

Close task

Usage

$ todoist --help
NAME:
   todoist - Todoist CLI Client

USAGE:
   todoist [global options] command [command options] [arguments...]

VERSION:
   0.15.0

COMMANDS:
     list, l                  Show all tasks
     show                     Show task detail
     completed-list, c-l, cl  Show all completed tasks (only premium users)
     add, a                   Add task
     modify, m                Modify task
     close, c                 Close task
     delete, d                Delete task
     labels                   Show all labels
     projects                 Show all projects
     karma                    Show karma
     sync, s                  Sync cache
     quick, q                 Quick add a task
     help, h                  Show a list of commands or help for one command

GLOBAL OPTIONS:
   --color              colorize output
   --csv                output in CSV format
   --debug              output logs
   --namespace          display parent task like namespace
   --indent             display children task with indent
   --project-namespace  display parent project like namespace
   --help, -h           show help
   --version, -v        print the version

list --filter

You can filter tasks by --filter option on list subcommand. The filter syntax is base on todoist official filter syntax.

Supported filter is here.

e.g. List tasks which over due date and have high priority

todoist list --filter '(overdue | today) & p1'

Config

Config by default stored in $HOME/.config/todoist/config.json

It has following parameters:

{
  "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", # todoist api token, required
  "color": "true"                                      # colorize all output, not required, default false
}

Install

Homebrew (Mac OS)

$ brew tap sachaos/todoist
$ brew install todoist

AUR

Nix/NixOS

nix-env -iA nixos.todoist

Docker

$ git clone https://github.com/sachaos/todoist.git
$ cd todoist
$ make docker-build token=xxxxxxxxxxxxxxxxxxxx
$ make docker-run

You will be running the next commands from inside the container.

PS: We add a step that is run sync before any command, so you will be always up to date!

Build it yourself

You need go 1.12.

$ mkdir -p $GOPATH/src/github.com/sachaos
$ cd $GOPATH/src/github.com/sachaos
$ git clone https://github.com/sachaos/todoist.git
$ cd todoist
$ make install

Register API token

When you run todoist first time, you will be asked your Todoist API token. Please input Todoist API token and register it. In order to get your API token go to https://todoist.com/prefs/integrations

Sync

After register API token, you should sync with todoist.com by sync sub command, like below.

$ todoist sync

Use with peco/fzf

RECOMMENDED

Install peco and load todoist_functions.sh on your .zshrc, like below.

fish version is here. ka2n/fish-peco_todoist Thanks @ka2n!

If you would prefer to use fzf instead load todoist_functions_fzf.sh like below.

$ source "$GOPATH/src/github.com/sachaos/todoist/todoist_functions.sh"

If installed via homebrew

If installed via homebrew and using zsh (usually this is added to your .zshrc without the $, usually before loading your ZSH plugin manager):

For peco:

$ source $(brew --prefix)/share/zsh/site-functions/_todoist_peco

For fzf:

$ source $(brew --prefix)/share/zsh/site-functions/_todoist_fzf

TODO: fish + homebrew

keybind

<C-x> t t: select task with peco
<C-x> t p: select project with peco
<C-x> t l: select labels with peco
<C-x> t c: select task and close with peco
<C-x> t d: select date
<C-x> t o: select task, and open it with browser when has url

Enable shell completion

You can also enable shell completion by adding the following lines to your .bashrc/.zshrc files.

# Bash
PROG=todoist source "$GOPATH/src/github.com/urfave/cli/autocomplete/bash_autocomplete"
# Zsh
PROG=todoist source "$GOPATH/src/github.com/urfave/cli/autocomplete/zsh_autocomplete"

Author

sachaos

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].