Introduction

This project has been in constant development for a few years now. It was the project that got me started with node.js and MongoDB. It is a project I continue to use to learn new technologies. Now on its third re-incarnation, completely redeveloped, is a WOZiTech product, hence the "wit" prefix; short for "WOZiTech".

At its core is the Raspberry PI directly connected to a display device, typically a large TV; hence wit-pi. Content (data only) is served to the PI, which is then displayed; hence wit-piDash (Dash is short for Dashboard).

wit-dash is the main application, running locally (within a docker container) and serving local content. Why run locally? Allow content to continue to be server even without an Internet connection all the while maintaining licensing/subscription restrictions.

Showcasing this project is:

  • Raspberry PI -Model 3; running a customised FlintOS distribution with docker; this is wit-pi.
  • A local electron/VueJS - docker container running the "wit-dash" application; presents as a desktop application.
  • HTML5 - rich text display
  • wit-piServe - docker container hosting wit-dash application as the local web service to wit-dash and connects to wit-contentServe, the WOZiTech central content server to get content (poll and notification).
  • wit-piManager - docker container managing licensing of "wit-pi", "wit-piServe" and "wit-dash", in addition to checking for and installing updates (OS, security and application).
  • fit.js - a clever library to constrain web elements within other elements, with alignment. Used by wit-dash application (Vue.JS compatible?).
  • LokiJS - a fast in-memory document oriented data store for node.js, browser and cordova. Used here by wit-secureContent to hold transient content data.

Links to this project include:

  • wit-contentServe - the primary data service for content.
  • wit-piSecure - running in a Docker container on wit-pi, securely connects to wit-serve to manage PI identity.
  • wit-piGesture - running in a Docker container on wit-pi (Raspberry PI Model 3) interacts with content using gestures captured via web camera.