Skip to content

GangOf7/WebApp

Repository files navigation

          

Overview

github-small

Youtube Video Link

   https://youtu.be/CSEZSGFQ9V4

Web Application - Visualization

Flying Dutchman provides device administration, graphical representation of indevidual parameters with respect to the devices. Informative data from Flying Dutchman can be utilized for monitoring and corrective actions as well as statistical analysis & research purpose.

Technology:-

   Java
   Spring Boot
   HTML
   CSS
   Javascript
   Jquery

Design IDE:-

   Eclipse
   Visual Studio Code

Long Story Short:-

Flying Dutchman is a web application that allows user to capture and visualize the water body parameters such as PH level, temperature, salinity etc. processed by the remote devices. This application also provides us with localization language settings that offers an inclusive digital experience to the underprivileged communities. The graphical representation of each parameters along with the tabular representation puts forward minute level information that can be utilized for statistical & research studies. Apart from the data visualization, it also offers administrative functionalities such as configuring new device, updating location information, report frequency, user creation etc. Thus, Flying Dutchman provides a centralized monitoring, corrective actions for all the remote devices that are connected to various waterbodies at different locations and also plays a pivotal role in providing statistical data for research purpose.

Install Prerequisites:-

   JavaSE 11
   Spring Boot
   Local Maven Installation

System Requirment:-

  • RAM : 512MB
  • HDD : 500MB
  • Internet Connectivity

Process To Build Webapp Locally:-

Clone the project and run these two commends from command line(windows), terminal(mac/linux) in order to build the webapp locally

Step 1: Check Java and Maven Version

java -version
mvn -v

Step 2: Install The Project

mvn install
java -jar ./target/javaspringapp-1.0-SNAPSHOT.jar

External Libraries:

<dependencies>
   <!-- Core -->
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter</artifactId>
   </dependency>
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
   </dependency>
   <!-- temp override to resolve CVE-2017-18640 -->
   <dependency>
      <groupId>org.yaml</groupId>
      <artifactId>snakeyaml</artifactId>
      <version>1.26</version>
   </dependency>
   <!-- https://mvnrepository.com/artifact/org.json/json -->
   <dependency>
      <groupId>org.json</groupId>
      <artifactId>json</artifactId>
      <version>20160810</version>
   </dependency>
   <!--Monitoring -->
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
   </dependency>
   <dependency>
      <groupId>io.micrometer</groupId>
      <artifactId>micrometer-registry-prometheus</artifactId>
   </dependency>
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
      <scope>runtime</scope>
      <optional>true</optional>
   </dependency>
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-thymeleaf</artifactId>
   </dependency>
   <!-- Distributed tracing with OpenTracing -->
   <dependency>
      <groupId>io.opentracing.contrib</groupId>
      <artifactId>opentracing-spring-jaeger-web-starter</artifactId>
      <version>${opentracing-spring-jaeger-web-starter.version}</version>
   </dependency>
   <!-- For this template -->
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
      <groupId>com.ibm.cloud</groupId>
      <artifactId>ibm-cloud-spring-boot-service-bind</artifactId>
      <version>1.1.2</version>
   </dependency>
   <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.9</version>
   </dependency>
</dependencies>

Compatible Browser:-

  • Chrome 70.0+
  • Internet Explorer 10+
  • Edge 40+
  • Firefox 72+
  • Safari

Endpoints:-

Home: http://localhost:8080/dutchman/dashboard
Admin: http://localhost:8080/admin/addNew