Skip to content
Ankur Paul edited this page Apr 12, 2022 · 3 revisions

Highradius Dashboard 🖥️

This project is built with React18 support which means it has bleeding edge support of the latest web framework. To get started in clicks, follow the docker deployment guide below.

Dashboard Screenshot

Screenshots


Project Status

CI (Build 🏗️ & Release 📦)


Technology Stacks Used

1. Backend

2. Frontend

3. CI/CD 🛠️ and Orchestration 📦


Getting Started

Easy Deployment

Backend Deployment using Docker

  1. Please visit the Docker folder to have a glance at the setup files

You would get a similar folder structure as shown in the image below.

Now take a look at the docker-compose.yaml file, that would expose us to the services that would be references while running the backend using Docker.

version: "3"

services:
    highradiustraining-servlet:
        container_name: highradiustraining-servlet
        deploy:
            replicas: 1
            restart_policy:
                condition: unless-stopped
        ports:
            - "280:8080"
        image: ankurpaul19/highradiustraining-servlet
    highradiustraining-flask:
        container_name: highradiustraining-flask
        deploy:
            replicas: 1
            restart_policy:
                condition: unless-stopped
        ports:
            - "5000:5000"
        image: ankurpaul19/highradiustraining-flask

    db:
        image: mysql:5.7
        command: --default-authentication-plugin=mysql_native_password
        volumes:
            - /var/lib/mysql:/var/lib/mysql
        restart: always
        environment:
            - MYSQL_ROOT_PASSWORD=mysql
            - MYSQL_DATABASE=grey_goose
            - MYSQL_USER=mysql
            - MYSQL_PASSWORD=mysql
        ports:
            - "3306:3306"

    db_seeder:
        image: mysql:latest
        volumes:
            - ./Database/db.sql:/db.sql
        environment:
            - MYSQL_ALLOW_EMPTY_PASSWORD=true
        entrypoint:
            [
                "bash",
                "-c",
                "sleep 10 && mysql --user=mysql --password=mysql --host=db --port=3306 grey_goose < /db.sql && exit",
            ]
        depends_on:
            - db

    phpmyadmin:
        image: phpmyadmin:latest
        restart: unless-stopped
        ports:
            - 8080:80
        environment:
            # we specify that we connect to an arbitrary server with the flag below
            # "arbitrary" means you're able to specify which database server to use on login page of phpmyadmin
            - PMA_ARBITRARY=1
        depends_on:
            - db_seeder

We can see that it uses these services for the backend to be running.

  1. highradiustraining-servlet (Tomcat server for servlets)
  2. highradiustraining-flask (Flask service for AI predictions in the dashboard)
  3. db (MySQL Container)
  4. db_seeder (Seeder service for initial setup of the database)
  5. phpmyadmin (Database monitoring) (optional, remove if not needed)

Before you can use the docker-compose.yaml file readily, you need to build the images first. Please visit the Docker folder and execute the below scripts to build the images.

    docker build -t ankurpaul19/highradiustraining-servlet -f Dockerfile-servlet.dockerfile .
  
    docker build -t ankurpaul19/highradiustraining-flask -f Dockerfile-flask.dockerfile .

Once the images are built, you can start the containers from the docker-compose.yaml file by,

docker-compose up (-d to detach from the console and keep running in the background)

Frontend Deployment

  1. Navigate to the Frontend folder.

  2. Install the dependencies for the web project using your preferred package manager (yarn / npm)

    yarn install or npm install

  3. Perform a build of the project. Please make modifications to the .env file by copying the default variables from .env.example file.

    Build the Project or download the build from releases.

    yarn build or npm run build

    The build time shall be around ~3 minutes ⌚ depending upon your pc specs.


HighRadius Training Details

Dear Student,

Finally the wait is over! The day has come when we are about to start with the internship program. So, brace yourselves for the upcoming roller coaster ride. The starting date for the Internship is 27-Jan 2022. The tenure for the Internship will be of 11 weeks wherein you'll be responsible to build an AI Enabled Fintech B2B Invoice Management Application..

Please read the PRS Document to get in-depth knowledge about the project.

Hope you have a pleasant journey ahead!

Regards,
HighRadius Corporation