Giter VIP home page Giter VIP logo

todr's Introduction

todr

todr is a command line tool which allows you to interact with your todoist account from your terminal.

Note: This tool is not created by, affiliated with, or supported by Doist.

Linux build status GitHub license Dependabot Status

Building/Installation

todr is written in Rust, so you'll need to grab a Rust installation in order to compile it. Building is easy:

$ git clone https://github.com/bgianfo/todr
$ cd todr
$ cargo build --release
$ ./target/release/todr

Eventually I'd like to create a crate.

Configuration

To configure todr you simply need to export your todoist authentication token as an environment variable.

  1. First, log into todoist.com.
  2. Under the gear icon at the upper right, select "Todoist Settings".
  3. Select the "Account" tab.
  4. Copy the value next to "API token".

In your shell (or place in your .profile/.bashrc)

export TODR_AUTHTOKEN='<paste your token here>'

Now you can run todr:

$ ./target/release/todr
>> help

Commands:

  h | help  - This help message

  i | items - List all active todo items.

  p | proj  - List all active projects.

  q | quit  - Exit the application.

>> i
  Andy's Wedding Prep ()
    Buy Tickets for Andy's Wedding (Apr 1)
    Book hotel for andy's wedding (Apr 1)
  Update Wiki Documentation ()
    Update Testing Documentation ()
      Add page for combinatorial testing. ()
>>

Running tests

To run the test suite, use:

$ cargo test

from the repository root.

todr's People

Contributors

bgianfo avatar dependabot-preview[bot] avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

todr's Issues

not possible to press enter from repl

I'm new to rust so apologies for the vague bug report. On pressing the enter key, all I see is ^M each time so it's not possible to enter and commands. Maybe related to the repl crate?

No previous history to load...
>> h  ^M^M^M

Building from master, using rust 1.16.0, on FreeBSD 12.0-CURRENT amd64.

De-serialization from Todoist API failing with "EOF while parsing a value"

$ cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 4.16s
     Running `target\debug\todr.exe`
>> p
thread 'main' panicked at 'Failed to deserialize json response: Error(Json(Error("EOF while parsing a value", line: 1, column: 0)))', src\libcore\result.rs:1084:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
error: process didn't exit successfully: `target\debug\todr.exe` (exit code: 101)

Honor the "Brand usage" of the Todoist API

We need to be explicit that we aren't related to Doist Inc.

https://developer.todoist.com/sync/v7/#limits25

In addition, please take note of the following:

- “Todoist” cannot be the first word in your application’s name. It can be used in the name of your app, though. For instance “x for Todoist” or “x with Todoist”, etc. 
  This makes it clear that your application is created by you and not by Doist.

- You must clearly state that your application is "not created by, affiliated with, or supported by Doist” in your application description.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.