Skip to content

A system to install public signages using web technology and the microservice approach

Notifications You must be signed in to change notification settings

Lohr-IT/infoscreen

Repository files navigation

Infoscreen

A system to install public signages using web technology and the microservice approach

Example Installation

I have published a blog post about the Raspberry PI setup.

Architecture

The 'Infoscreen' uses a microservice architecture and is built using Javascript, Node and NPM. The client uses Vue.js.

When setup in a Kubernetes cluster, the architecture could look like this: Architecture

Services

The system consists of the following microservices:

  • slide-api: Provides an API endpoint that returns active slides and their data from the database. Needs to be protected by some kind of proxy or HTTP auth.
  • client: Contacts the slide API to render and serve a Vue.js app, which gets slide data from the slide-API
  • management-api: TODO
  • management-panel: TODO

The database mongodb is used to store the slides.

Optional microservices:

  • event-crawler: Crawler example, which crawls a website built with The Events Calendar for upcoming events and adds them as slides to the database
  • tribe-simulator: Simulates the event API of The Events Calendar. Only used during development to inject test events.

The shared module contains models and shared code required by multiple modules.

Building

Build instructions can be found in the readme-files of the module. To build them with docker, you have to specify the root folder as build context. Example: docker build -f ./client/Dockerfile .

Raspberry Pi

Production Setup on a RaspberryPI: Read the instructions here.

About

A system to install public signages using web technology and the microservice approach

Resources

Stars

Watchers

Forks