Giter VIP home page Giter VIP logo

mmm-googletaskskanban's Introduction

MMM-GoogleTasksKanban

Module for the MagicMirror² smart mirror.

Displays tasks from Google Tasks App in a Kanban board (backlog/InProgress/Done columns)
Implementation is based on:

Example

Example of MMM-GoogleTasksKanban with just read-only auth token Example of MMM-GoogleTasksKanban with just read-write auth token

Dependencies

The Google Node.js client library

Installation

To install the module, use your terminal to:

  1. Navigate to your MagicMirror's modules folder. If you are using the default installation directory, use the command:
    cd ~/MagicMirror/modules
  2. Clone the module:
    git clone https://github.com/lpage30/MMM-GoogleTasksKanban.git
  3. Navigate to your module directory:
    cd ~/MagicMirror/modules/MMM-GoogleTasksKanban
  4. install the cloned module: npm install

Authentication Setup

Google Tasks API an authenticated OAuth2 client:

  1. Go here, and click "Enable the Google Tasks API" button. Follow the steps to download the credentials.json file.
  2. copy credentials.json to your MagicMirror config directory (MagicMirror/config). Rename it if you are using more than 1 set of credentials.
  3. Enable Google Tasks API. Select the same project as in step 1.
  4. Run CreateTokens.js:
    node CreateTokens.js
  5. Follow the instructions. Copy the resulting Token.json files (RO and RW) to your MagicMirror config directory (MagicMirror/config). Rename them if you are using more than 1 set.

Using the module

Google Task definitions for backlog, in progress, and done.

  • Backlog: A Task that is NOT completed and does NOT have a due date
  • In Progress: A Task that is NOT completed but DOES HAVE a due date
  • Done: Any Task that is completed

MagicMirror² Configuration

To use this module, add the following configuration block to the modules array in the config/config.js file:

var config = {
    modules: [
        ...
        {
			module: 'MMM-GoogleTasksKanban',
			position: 'top_left',
			config: {
				listName: 'To-Do',
				credentialsRelativeFilepath: './credentials.json',
				roTokenRelativeFilepath: './rotoken.json',
				rwTokenRelativeFilepath: './rwtoken.json',
			}
		},
        ...
    ]
}

Configuration Options

Option Details
listID or listName Required - List ID or Name from your Google Tasks application
inprogressDays Optional - When changing task to inprogress the task due date will be set to current day plus this many days.
Default value: 10 (10 days)
updateInterval Optional - Interval at which content updates (Milliseconds)

Possible values: 2000 - 86400000 (Tasks API has default maximum of 50,000 calls per day.)
Default value: 10000 (10 seconds)
animationSpeed Optional - Speed of the update animation. (Milliseconds)

Possible values: 0 - 5000
Default value: 2000 (2 seconds)
credentialsRelativeFilepath Required - Filepath relative to MagicMirror/config directory for the credentials used by this instance.
roTokenRelativeFilepath or rwTokenRelativeFilepath Required - Filepath relative to MagicMirror/config directory for the tokens used by this instance. If rw is provided than that token will be used exclusively and enable moving of tasks to in progress or completed or backlog.

mmm-googletaskskanban's People

Contributors

lpage30 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.