web-development

Dashboarder Spring MVC API

A full-stack dashboarding application utilizing Spring MVC for the backend and Angular for the frontend, with deployment on Azure and GitHub Pages.

This project is a dashboarding application that allows users to create dashboards by adding YouTube video URLs. The backend, built with Java Spring MVC, fetches data from the YouTube API and stores it in a MySQL database, while the frontend, built with Angular, displays the fetched data in an interactive dashboard.

The UI (User Interface)

Screenshot from 2023-04-28 18-47-13

Link to the UI repo: User Interface

  • For the purpose of building the Frontend I have used the framework Angular.

Hosting

  • The FrontEnd is hosted on a GitHub Page.
  • The Spring MVC API is deployed on Azure as an App Service.
  • The Backend MySQL Database also hosted on Azure.

Description

The repository dashboarder-spring-mvc-api on GitHub contains source code for a Java Spring MVC web application that serves as an API for a dashboarding application. The application allows users to create a dashboards by adding the URL and the API will fetch the data from Youtube API.

  • The code in the repository is organized into several packages, including config, controller, service, model, and dao.

    • The controller package contains Java classes that handle incoming HTTP requests and map them to /api/data.
    • The service package contains classes that implement business logic and interact with data access objects (DAOs) in the dao package.
    • The model package contains class that represent a table youtubeData which store the data coming from Youtube API.
    • The dao package contains interface that define save method for interacting with a database.
  • Also, there is the package utils that contains the class that handle the Youtube API.

  • The repository contains several subdirectories, including resources (which contains configuration file db.properties).

Overall, the repository provides a starting point for building a Spring MVC-based API for a dashboarding application.

Key Features

  • Users can create dashboards by adding YouTube video URLs
  • Data is stored in a MySQL database hosted on Azure
  • Angular-based frontend for an interactive dashboard

Achievements

  • Developed a Spring MVC API to fetch and store YouTube data
  • Deployed the backend on Azure App Service and frontend on GitHub Pages