Skip to content

jadogeri/Spring-Boot-Demo-Factory-API

System Design Document (SDD)

Spring Boot Demo Factory API

Version: 1.0.0

Date: September 25, 2025


Description

This is a template for Backend Application (Spring Boot) which stores Products.

Authors

@jadogeri

Repository

https://github.com/jadogeri/Spring-Boot-Demo-Factory-API.git

Screenshots

Screenshot 1 screenshot 2
Screenshot 1 screenshot 2

Table of Contents

  • 9. References
    • 1. Introduction

      1.1 Purpose

      This document outlines the system architecture, components, and design considerations for Factory API. The goal is to provide a template for backend developers to handle CRUD operations.

      1.2 Scope

      The system will allow users to:

      • Create Products.
      • Interact with API via swagger.

      1.3 Intended Audience

      • Junior or Senior backend developers.
      • beginners learning Spring Boot (Java).

      2. Technology Stack

      • Programming Languages: Java, SQL
      • IDE: IntelliJ and Visual Studio Code (VSCode)
      • Backend Frameworks: Spring Boot JPA
      • Database: H2 Database
      • Test: JUnit and TestContainers
      • Plugins: Early AI
      • Container: Docker
      • Version Control: Git and GitHub
      • CI/CD: GitHub Actions
      • Code Analsis: SonarQube
      • Documentation: Swagger

      3. Data Design

      3.1 Data Entities and Relationships

      Entity Description
      PRODUCT product made in factory.

      4. Installation


      5. Usage

      Prerequisites :installation of Java, Docker and Maven.

      5.1 Run Application

      0 open intelliJ IDE.

      1 Select option CLONE REPOSITORY .

      2 Copy and paste url https://github.com/jadogeri/Spring-Boot-Demo-Factory-API.git and choose location to save project then press clone.

      (Note!! choose empty folder : I created folder factoryAPI)

      start application

      3 Change view to Project.

      4 Navigate to factory --> src --> main -- java.

      5 Inspect file FactoryApplication.java.

      6 Press play button to start application.

      start application

      6. API Testing

      Prerequisites : Ensure container or local application is running.

      Note : Use http://localhost:8080/swagger-ui/index.html docs for testing endpoints.

      API Documentation


      7. Tests

      Tests can be ran by the following means below.

      1. Terminal
      2. IntelliJ IDE

      1. Terminal

      1. In the root of (factory directory), run command mvn test.
        mvn test

      tests-terminal


      2. IntelliJ IDE

      1 Change folder structure to Tests. 2 Right click on project folder (factory) --> Navigate to More Run/Debug --> Run all Tests with Coverage.

      navigate to tests test results with coverage

      8. License

      LICENSE


      9. References

About

Spring Boot App (Java) for performing CRUD operations and implements Swagger Documentation

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages