titan-ccp-frontend

The visualization frontend of the Titan Control Center Prototype

https://github.com/cau-se/titan-ccp-frontend

Science Score: 65.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
    Organization cau-se has institutional domain (www.se.informatik.uni-kiel.de)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary
Last synced: 11 months ago · JSON representation ·

Repository

The visualization frontend of the Titan Control Center Prototype

Basic Info
  • Host: GitHub
  • Owner: cau-se
  • License: apache-2.0
  • Language: Vue
  • Default Branch: master
  • Homepage:
  • Size: 5.69 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 5
  • Open Issues: 16
  • Releases: 0
Created almost 8 years ago · Last pushed over 3 years ago
Metadata Files
Readme License Citation

README.md

Titan Control Center - Visualization Frontend

The Titan Control Center is a scalable monitoring infrastructure for Industrial DevOps. It allows to monitor, analyze and visualize the electrical power consumption of devices and machines in industrial production environments.

This repository contains the visualization frontend of the Titan Control Center. It is a single-page application written in Typescript and Vue.js.

Developing

To work on this project, clone this repository and execute:

shell npm install

In order to start a development server running on http://localhost:8070 execute:

shell npm run serve

A good tool for working on this software is Visual Studio Code. In order to get things like autocompletion for .vue files, you need to install the vetur plugin. When you open a vue file the first time, Visual Studio Code suggests to install this plugin. Further, the ESLint plugin should be installed to get notifications on violated coding guideline already during developing.

The visualization frontend highly depends on external data sources, more specifically, the other Titan CCP microservices. In order to let the frontend access them, you need to start a reverse proxy that redirects all calls to the other services. We provide such a reverse proxy as part of the frontend, which can be started be started via:

shell docker run --rm --name titan-ccp-frontend --network host -e "SENSOR_MANAGEMENT_BASE_URL=http://<host>:<port>" -e "HISTORY_BASE_URL=http://<host>:<port>" -e "STATS_BASE_URL=http://<host>:<port>" -d industrialdevops/titan-ccp-frontend

Note: The application intended for development is running at port 8070, whereas a the application running at port 8080 is the compiled one running in the Docker container. If you want to build this reverse proxy by yourself, follow the steps described below.

Building

To build the visualization frontend for use in production execute:

shell npm install npm run build

This will create some files in dist. These files along with the index.html can then be copied on a web server for productive usage.

This repository also contains a Dockerfile. Adjust the nginx.conf file accordingly and run docker build -t titan-ccp-frontend . to create an image from it (after building it with npm).

Running

To start a container execute:

shell docker run --rm --name titan-ccp-frontend -p <port>:8080 -e "SENSOR_MANAGEMENT_BASE_URL=http://<host>:<port>" -e "HISTORY_BASE_URL=http://<host>:<port>" -e "STATS_BASE_URL=http://<host>:<port>" -d titan-ccp-frontend

Reference

Please cite the Titan Control Center as follows:

S. Henning, W. Hasselbring, The Titan Control Center for Industrial DevOps analytics research, Software Impacts 7 (2021), DOI: 10.1016/j.simpa.2020.100050.

BibTeX:

bibtex @article{Henning2021, title = {The Titan Control Center for Industrial DevOps analytics research}, journal = {Software Impacts}, volume = {7}, pages = {100050}, year = {2021}, doi = {10.1016/j.simpa.2020.100050}, author = {Sören Henning and Wilhelm Hasselbring}, }

Owner

  • Name: Kiel University - Software Engineering Group
  • Login: cau-se
  • Kind: organization
  • Location: Kiel, Germany

Citation (CITATION.cff)

cff-version: "1.1.0"
message: If you use the Titan Control Center, please cite it using these metadata.
authors: 
  - family-names: Henning
    given-names: "Sören"
    orcid: "https://orcid.org/0000-0001-6912-2549"
  - family-names: Hasselbring
    given-names: Wilhelm
    orcid: "https://orcid.org/0000-0001-6625-4335"
title: Titan Control Center
version: "0.9.0"
repository-code: "https://github.com/cau-se/titan-ccp"
license: "Apache-2.0"
doi: 10.1016/j.simpa.2020.100050
preferred-citation:
  type: article
  authors: 
    - family-names: Henning
      given-names: "Sören"
      orcid: "https://orcid.org/0000-0001-6912-2549"
    - family-names: Hasselbring
      given-names: Wilhelm
      orcid: "https://orcid.org/0000-0001-6625-4335"
  doi: "10.1016/j.simpa.2020.100050"
  journal: "Software Impacts"
  title: "The Titan Control Center for Industrial DevOps analytics research"
  volume: 7
  year: 2021

GitHub Events

Total
Last Year

Dependencies

package-lock.json npm
  • 1383 dependencies
package.json npm
  • @types/jest ^26.0.20 development
  • @types/lodash.debounce ^4.0.6 development
  • @types/luxon ^1.25.1 development
  • @typescript-eslint/eslint-plugin ^2.33.0 development
  • @typescript-eslint/parser ^2.33.0 development
  • @vue/cli-plugin-eslint ^4.5.10 development
  • @vue/cli-plugin-router ^4.5.10 development
  • @vue/cli-plugin-typescript ^4.5.10 development
  • @vue/cli-plugin-unit-jest ^4.5.10 development
  • @vue/cli-service ^4.5.10 development
  • @vue/eslint-config-standard ^5.1.2 development
  • @vue/eslint-config-typescript ^5.0.2 development
  • @vue/test-utils ^1.1.2 development
  • eslint ^6.7.2 development
  • eslint-plugin-import ^2.20.2 development
  • eslint-plugin-node ^11.1.0 development
  • eslint-plugin-promise ^4.2.1 development
  • eslint-plugin-standard ^4.0.0 development
  • eslint-plugin-vue ^6.2.2 development
  • sass ^1.32.5 development
  • sass-loader ^10.1.1 development
  • typescript ~3.9.7 development
  • vue-template-compiler ^2.6.12 development
  • @fortawesome/fontawesome-svg-core ^1.2.34
  • @fortawesome/free-solid-svg-icons ^5.15.2
  • @fortawesome/vue-fontawesome ^0.1.10
  • @riophae/vue-treeselect ^0.0.38
  • @types/d3-selection ^2.0.0
  • axios ^0.21.1
  • bootstrap ^4.6.0
  • bootstrap-vue ^2.21.2
  • britecharts ^2.17.6
  • lodash.debounce ^4.0.8
  • luxon ^1.25.0
  • vue ^2.6.12
  • vue-class-component ^7.2.3
  • vue-flatpickr-component ^8.1.6
  • vue-property-decorator ^8.4.2
  • vue-router ^3.4.9
  • vue2-daterange-picker ^0.5.1
  • vuedraggable ^2.24.3
Dockerfile docker
  • nginx alpine build