All Projects → thingsapi → things-cli

thingsapi / things-cli

Licence: other
A simple Python 3 CLI to read your Things app data.

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to things-cli

KanbanView
CLI, API, Web Service and Kanban for Things 3
Stars: ✭ 64 (-47.11%)
Mutual labels:  things, things3
send-to-things
A PWA to add tasks to Things from pretty much anywhere
Stars: ✭ 39 (-67.77%)
Mutual labels:  things, things3
thingsapp
Node module for creating todos in Things.app
Stars: ✭ 37 (-69.42%)
Mutual labels:  things
timebox
A Custom Pomodoro macOS Menubar App with Things 3 integration
Stars: ✭ 52 (-57.02%)
Mutual labels:  things3
thingshub
[UNMAINTAINED] Synchronize issues assigned to you from a Github repo into Things.
Stars: ✭ 17 (-85.95%)
Mutual labels:  things3

Things Python CLI

A simple Python 3 CLI to read your Things app data using the things.py API.

Build Status Coverage Status Scrutinizer Code Quality GitHub Issues License GitHub Release PyPI - Downloads GitHub Download Count

Table of Contents

Install

$ pip3 install things-cli
# or
$ git clone https://github.com/thingsapi/things-cli && cd things-cli && make install

Examples

% things-cli inbox
 -  To-Do in Inbox with Checklist Items  ( Inbox )
 -  To-Do in Inbox  ( Inbox )

% things-cli --recursive areas
- Area 3 ()
  - Todo in Area 3 (Area 3)
- Area 2 ()
- Area 1 ()
  - Project in Area 1 (Area 1)
    - Todo in Area 1 (Project in Area 1)
    - Heading (Project in Area 1)
      - To-Do in Heading (Heading)
  - To-Do in Area 1 (Area 1)

% things-cli --json today|jq
[
  {
    "uuid": "5pUx6PESj3ctFYbgth1PXY",
    "type": "to-do",
    "title": "To-Do in Today",
    "status": "incomplete",
    "notes": "With\nNotes",
    "start": "Anytime",
    "start_date": "2021-03-28",
    "deadline": null,
    "stop_date": null,
    "created": "2021-03-28 21:11:22",
    "modified": "2021-03-28 21:11:30"
  }
]

% things-cli --csv --recursive all > all.csv && open all.csv

% things-cli --opml --recursive all > all.opml && open all.opml

% things-cli --gantt --recursive all > all.mmd && mmdc -i all.mmd -o all.png && open all.png

% things-cli -h
usage: cli.py [-h] [-p FILTER_PROJECT] [-a FILTER_AREA] [-t FILTER_TAG] [-e] [-o] [-j] [-c] [-g] [-r] [-d DATABASE] [--version] command ...

Simple read-only Thing 3 CLI.

positional arguments:
  command
    inbox               Shows inbox tasks
    today               Shows todays tasks
    upcoming            Shows upcoming tasks
    anytime             Shows anytime tasks
    completed           Shows completed tasks
    someday             Shows someday tasks
    canceled            Shows canceled tasks
    trash               Shows trashed tasks
    todos               Shows all todos
    all                 Shows all tasks
    areas               Shows all areas
    projects            Shows all projects
    logbook             Shows completed tasks
    logtoday            Shows tasks completed today
    tags                Shows all tags ordered by their usage
    deadlines           Shows tasks with due dates
    feedback            Give feedback
    search              Searches for a specific task

optional arguments:
  -h, --help            show this help message and exit
  -p FILTER_PROJECT, --filter-project FILTER_PROJECT
                        filter by project
  -a FILTER_AREA, --filter-area FILTER_AREA
                        filter by area
  -t FILTER_TAG, --filtertag FILTER_TAG
                        filter by tag
  -e, --only-projects   export only projects
  -o, --opml            output as OPML
  -j, --json            output as JSON
  -c, --csv             output as CSV
  -g, --gantt           output as mermaid-js GANTT
  -r, --recursive       in-depth output
  -d DATABASE, --database DATABASE
                        set path to database
  --version, -v         show program's version number and exit

Screenshots

Mindmap

opml

Excel

excel

GANTT

gantt

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].