8000 GitHub - nevinmathew/BookCataloging: A web app for efficient book management, built with Quarkus for speed and scalability. Integrated with SonarQube, it maintains high code quality, ensuring reliability and security.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

A web app for efficient book management, built with Quarkus for speed and scalability. Integrated with SonarQube, it maintains high code quality, ensuring reliability and security.

License

Notifications You must be signed in to change notification settings

nevinmathew/BookCataloging

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BookCataloging

Table of Contents

Description

This project serves as an example of a simple book management system with user and recommendation functionalities. It is a Java-based web application built with Quarkus, a Kubernetes-native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best Java libraries and standards.

Features

  • Book Management: Allows CRUD operations for books, including adding, updating, deleting, and retrieving book information.
  • User Management: Enables CRUD operations for users, including adding, updating, deleting, and retrieving user information.
  • Search: Provides a search functionality to filter books by title, author, and genre.
  • Recommendation: Generates book recommendations for users based on their previous selections.

SonarQube Integration

SonarQube is an open-source platform for continuous inspection of code quality to perform automatic reviews with static analysis of code to detect bugs, code smells, and security vulnerabilities.

Installation and Setup:

  1. Download and Install SonarQube:

    • Download the latest version of SonarQube from the official website.
    • Follow the installation instructions provided in the documentation.
  2. Configure SonarQube:

    • Set up the necessary database configurations in the sonar.properties file.

        sonar.jdbc.username=
        sonar.jdbc.password=
        sonar.embeddedDatabase.port=9092

      or configure for the database you wish to use.

    • Configure ports for the web interface and search functionalities.

        sonar.web.port=
        sonar.search.port=
    • Ensure sufficient disk space is available, typically between 20 to 50 GB.

        sonar.path.data=data
        sonar.path.temp=temp

Note: Check logs (sonar.log, web.log, es.log) for errors, common ones being related to disk space.

  1. Install and Start SonarQube Service:

    • Run sonarservice.bat install to install the SonarQube service.
    • Run sonarservice.bat start to start the SonarQube service.
  2. Start SonarQube:

    • Execute the StartSonar.bat script to start the SonarQube service.
  3. Access SonarQube Dashboard:

    • Once SonarQube is up and running, access the dashboard via your web browser. The default URL is usually http://localhost:9000.

Running SonarQube Analysis:

  1. Maven Plugin:

    • Include the SonarQube Maven plugin in your project's pom.xml file:
      <plugin>
          <groupId>org.sonarsource.scanner.maven</groupId>
          <artifactId>sonar-maven-plugin</artifactId>
          <version>3.11.0.3922</version>
      </plugin>
  2. Configure Project Properties:

    • Add the following SonarQube properties to your project's pom.xml file:
      <sonar.projectKey>Your_Project_Key</sonar.projectKey>
      <sonar.projectName>Your_Project_Name</sonar.projectName>
      <sonar.host.url>http://localhost:9000</sonar.host.url>
  3. Run SonarQube Analysis:

    • Execute the following Maven command to run SonarQube analysis:
        mvn clean verify sonar:sonar

Monitoring Code Quality

SonarQube will analyze your code and provide insights into code quality metrics, security vulnerabilities, and code smells. Access the analysis results on the SonarQube dashboard to identify areas for improvement and ensure code quality standards are met.

For more detailed information on SonarQube and its features, refer to the official documentation.

SonarQube Screenshot

SonarCloud

SonarCloud is a static code analysis tool that provides insights into the quality and security of your codebase. It scans your code for bugs, vulnerabilities, code smells, and other issues, helping you ensure that your code is maintainable, reliable, and secure. To start using SonarCloud for your projects, you can configure analysis settings and set up automated scans for your projects. SonarCloud provides detailed reports and insights that you can use to improve the quality and security of your codebase. For more information, visit the SonarCloud website.

SonarCloud Analysis

SonarCloud Screenshot

About

A web app for efficient book management, built with Quarkus for speed and scalability. Integrated with SonarQube, it maintains high code quality, ensuring reliability and security.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0