davideberlein / kanboard-presenter

Node.js & AngularJs application that displays all Kanboard (http://kanboard.net) Kanban boards of a configured user in a cyclic manor.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

study-kanboard-presenter

NodeJS and AngularJS application that displays all Kanban boards of a configured Kanboard (fguillot/kanboard, http://kanboard.net) server in a cyclic manor.
The goal of this app is to simply present all important Kanban Boards of multiple Projects on a TV screen in a beautiful, automatic way.
The App runs fine on a Raspberry Pi 2 using the linaro ubunto image.

app screenshot

Kanboard

This app needs a running fguillot/kanboard server and its API Token as prerequisite.
The Proxy communicates with the Kanboard using its JSON RPC interface.
Compatibility was tested up to Kanboard v1.0.13 API.

Structure

The App exists of two parts. A node.js backend and a AngularJS frontend.

Backend

The node.js server in combination with Express4 and node-rest-client function as REST proxy between the Kanboard server and the Frontent by providing convenience REST service to simplfy the API implemented on the Frontend.

Frontend

The frontend is implemented using AngularJS and is visualized with AngularMaterial.

Configuring the project

Server API URL and API token

You may retrieve this information on the Kanboard from: Home > Settings > API.
hint: Admin rights are needed to access this page.

The API Endpoint and API Token must be configured using environment variables KANBOARD_ADDR, KANBOARD_APIKEY or in the following file: app/routes.js and the function kanboardApi.configureServer().

Configure the user

To display all boards of a specific user, the user ID must be configured in the browser URL.
To do so, use the following URL: http://localhost:16565/#/user/{YOUR_USER_ID}/board/

Installing, building and running

  1. Download and install nodejs from https://nodejs.org/download/
  2. Navigate to the repo dir in the command line.
  3. Call npm install.
  4. Call bower install. (If problems come up check if the proxy config fits your network environment in .bowerrc)
  5. Call node server.js and the server will start
  6. Open http://localhost:16565 in the browser to view the presenter.

Docker

You can build and run a docker container:

  1. Install docker.
  2. Navigate to the repo dir in the command line.
  3. Run docker build . -t kanboard-presenter
  4. Start the container: docker run -p 16565:16565 -e KANBOARD_ADDR=server.company.com -e KANBOARD_APIKEY=abcdef1234567890
  5. Open http://localhost:16565 in the browser to view the presenter.

Distribution

The project can be distributed as a single nw.js executable for linux and windows x32/64 platforms.

To do so call: gulp nw:build in the project directory and find the binaries in the build folder.

About

Node.js & AngularJs application that displays all Kanboard (http://kanboard.net) Kanban boards of a configured user in a cyclic manor.


Languages

Language:JavaScript 50.0%Language:HTML 29.9%Language:CSS 19.0%Language:Dockerfile 1.1%