Dynamic Content Dashboard
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.