Giter Club home page Giter Club logo

book-catalogue's Introduction

Book catalogue App

Welcome to the Book catalogue App repository! This repository contains the Management Service and UI Service for managing and interacting with a book catalogue.

๐Ÿ“‚ Repository Structure

  • management-service: Contains the source code and configuration files for the Management Service.
  • ui-service: Contains the source code and configuration files for the UI Service.
  • README.md: Provides an overview of the repository and instructions for getting the services up and running.
  • run-book-catalogue-services.sh: Script to execute the book catalogue application (Both management-service & ui-service)
    • Execution Permissions: permission denied when executing script on Linux run this command: chmod +x run-book-catalogue-services.sh
  • run-management-service.sh: Script to execute the management-service
  • run-ui-service: Script to execute the ui-service

๐Ÿ“š Management Service

The Management Service is a Spring Boot application that serves as the backend for managing the bookEntity catalogue. It provides a RESTful API for performing CRUD operations on books and utilizes an in-memory database.

๐Ÿ–ฅ๏ธ UI Service

The UI Service is a Spring Boot application that provides a user interface for managing the book catalogue. It allows users to view, add, edit, and delete books. The UI Service communicates with the Management Service's REST API using a JAX-RS Client and generates web pages using Thymeleaf.

๐Ÿš€ Getting Started

Prerequisites

  • Java 1.8 or higher
  • Maven

Installation

  1. Clone the repository: git clone https://github.com/HoodLum-1/book-catalogue
  2. Navigate to the project directory: cd management-service
  3. Execute the scripts for your operating system (Linux or Win)
  4. Access the UI by opening your web browser and navigating to http://localhost:8080.

๐Ÿ“– API Documentation

The Management Service provides API documentation using Swagger and Swagger UI. You can access the Swagger UI by visiting the following URL in your web browser: http://localhost:5000/swagger-ui/

The Swagger UI provides an interactive interface where you can explore the available API endpoints, view request/response models, and even test the API directly.

API Endpoints

The Management Service exposes the following RESTful endpoints:

  • GET /api/books - Retrieve a list of all books

  • GET /api/books/{id} - Retrieve a specific bookEntity by ID

  • POST /api/books - Add a new bookEntity

  • PUT /api/books/{id} - Update an existing bookEntity

  • DELETE /api/books/{id} - Delete a bookEntity

๐Ÿ“š Book Data

The bookEntity data consists of the following attributes:

  • Name
  • ISBN Number
  • Publish Date (dd/MM/yyyy)
  • Price (ZAR)
  • Book Type (Hard Cover, Soft Cover, eBook, etc.)

๐ŸŒ User Interface

The UI Service provides the following functionality:

  • List all books
  • Add a new book
  • Edit an existing book
  • Delete a book

๐Ÿ’ป Technologies Used

  • Java
  • Spring Boot
  • Maven
    • In-memory Database (H2)
  • Swagger and Swagger UI
  • Thymeleaf
  • JAX-RS Client

book-catalogue's People

Contributors

hoodlum-1 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.