Skip to content
Managing dashboards on various displays (especially those running on Android)
Branch: master
Clone or download
vincentbernat Merge pull request #77 from dersimn/master
Clearify README regarding Docker and Chromecast
Latest commit 78b5a9b Oct 18, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
app add branding images for vente-privee Apr 11, 2018
db/migrations dashboard: ability to make a dashboard unavailable on some time period Nov 8, 2014
lib express: ensure no trailing slashes are used for HTML pages Apr 6, 2018
test npm: update all dev dependencies Aug 7, 2015
.dockerignore docker: add a gitignore to ignore .git Aug 6, 2015
.env dokku: add dokku support by providing a .env with appropriate buildpack Mar 13, 2015
.gitignore express: configurable Basic Authentication Jul 7, 2015
.jshintrc receiver: rewrite without Zepto Jun 21, 2015
.travis.yml travis: remove outdated node.js version, add current ones Jul 13, 2017
Gruntfile.js build: use node --inspect instead of node --debug Apr 6, 2018 Clearify README regarding Docker and Chromecast Oct 18, 2018
package.json build: use >= to specify a node engine Apr 6, 2018
server.js firefox: redirect old firefox receiver to the classic one Feb 2, 2017


Build Status

Dashkiosk is a solution to manage dashboards on multiple screens. It comes as four components:

  1. A receiver runs in a browser attached to each screen and will display the requested dashboards. The receiver is quite dumb, it contacts the server and wait for it to tell which URL to display.

  2. A server which will manage the screens by sending them what they should display. An administration interface allows the user to manage those screens individually or in a group.

  3. An Android app that will run the receiver. This is mainly a fullscreen webview. There is also a Firefox app fulfilling the same purpose.

  4. A Chromecast custom receiver which will run the regular receiver if you want to display dashboards using Google Chromecast devices.

The full documentation is available on ReadTheDocs.

A live installation, reset every hour, is publicly available:

Here is a demonstration video:

Dashkiosk demo


To run the server for development:

$ grunt serve

Android receiver

The Android receiver has moved to its own repository.

Chromecast receiver

The "official" Chromecast receiver has app ID 5E7A2C2C and is hosted in the gh-pages branch of this repository. To update it:

$ grunt dist
$ git worktree add ~/src/dashkiosk-gh-pages gh-pages
$ cd ~/src/dashkiosk-gh-pages
$ git rm -r *
$ rsync -rv --include '*chromecast*' --include '*/' --exclude '*' ~-dashkiosk/dist/public/* .
$ git add *
$ git commit -m "Update"


There is a Dockerfile to run Dashkiosk inside Docker. As of 06438d6 this will also work with Chromecast devices if your Docker host supports the --net=host option:

$ docker run --net=host \
             -v /var/lib/dashkiosk/database:/database \
             -e "chromecast__enabled=1" \
             -e "chromecast__receiver=http://<DOCKER_HOST_IP>:8081/receiver" \
             -e "port=8081" \

To start without Chromecast support, simply run:

$ docker run -d -p 8080:8080 \
             -v /var/lib/dashkiosk/database:/database \

Using latest can be broken from time to time. You may prefer a stable tag, like 2.6.1.

You can’t perform that action at this time.