Web application to Visualise IoT Data for Abacws Building. Built for my dissertation at Cardiff Unversity (CM3203) https://abacws.ggrainger.uk/
  • TypeScript 83.6%
  • SCSS 12.7%
  • HTML 2.1%
  • Dockerfile 1.6%
Find a file
2022-11-21 23:29:25 +00:00
.github Change to scheduled builds 2022-07-23 17:13:07 +01:00
.vscode Rename folders 2022-03-17 22:11:06 +00:00
api Add default behaviour to generate script 2022-07-23 16:05:49 +01:00
dummy-data-provider Remove unused file 2022-07-23 17:10:44 +01:00
visualiser Disallow web crawlers 2022-11-21 23:29:25 +00:00
.gitattributes Improve documentation 2022-03-27 19:34:54 +01:00
docker-compose.yml Update image name 2022-04-20 21:17:14 +01:00
LICENSE Create LICENSE 2022-03-05 15:52:53 +00:00
README.md Fix README links 2022-05-11 16:21:07 +01:00

Abacws Data Visualiser

Web application made to visualise IoT data for devices in the Abacws building at Cardiff University.
This repository contains the API and the Visualiser tool, both of which are deployed using docker.

Production deployments for these tools can be found at the following locations:

Docs

You can view the documentation for the two separate services in their respective README files.

Docker compose

I recommend using docker compose to deploy this to your own server alongside traefik.
An example compose file can be seen below.

version: '3.8'
services:
  mongo:
    image: mongo
    container_name: abacws-mongo
    restart: always
    volumes:
      - ./mongo:/data/db

  api:
    image: ghcr.io/randomman552/abacws-data-vis:api-latest
    container_name: abacws-api
    restart: always
    depends_on:
      - mongo

  visualiser:
    image: ghcr.io/randomman552/abacws-data-vis:visualiser-latest
    container_name: abacws-visualiser
    restart: always
    depends_on:
      - api
    # Traefik is recommended, you can set up a NGINX or Apache proxy instead, but traefik is much easier.
    labels:
      - "traefik.enable=true"
      - "traefik.http.services.abacws-visualiser.loadbalancer.server.port=80"
      - "traefik.http.routers.abacws-visualiser.rule=Host(`visualiser.abacws.example.com`)"
      - "traefik.http.routers.abacws-visualiser.entrypoints=https"
      - "traefik.http.routers.abacws-visualiser.tls=true"

Supported tags

Tag Description
visualiser-latest Production ready visualiser
visualiser-main Development visualiser
visualiser-vx.y.z Specific visualiser version
api-latest Production ready API
api-main Development API
api-vx.y.z Specific API version