# dkhan21/mssc-brewery-client architecture

> Architecture diagram of the GitHub repository dkhan21/mssc-brewery-client, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/dkhan21/mssc-brewery-client
- Repository: https://github.com/dkhan21/mssc-brewery-client

## Overview

This is a small Spring Boot brewery-service client. Its supported runtime behavior is to expose a configured BreweryClient that requests a beer by UUID from the brewery API and deserializes the response as BeerDto. No broader user workflow or CustomerDto usage is evidenced by the sampled source.

Main entry points: [`src/main/java/guru/springframework/msscbreweryclient/web/client/BreweryClient.java`](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/client/BreweryClient.java) (Brewery client), [`src/main/java/guru/springframework/msscbreweryclient/web/model/BeerDto.java`](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/model/BeerDto.java) (Beer DTO), [`src/main/java/guru/springframework/msscbreweryclient/MsscBreweryClientApplication.java`](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/MsscBreweryClientApplication.java) (Spring Boot app)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_application["Spring Boot app"]
node_client["Brewery client<br/>[BreweryClient.java]"]
node_beer["Beer DTO<br/>[BeerDto.java]"]
node_customer["Customer DTO<br/>[CustomerDto.java]"]
node_brewery(("Brewery API"))

node_application -->|"registers component"| node_client
node_client -->|"GET beer"| node_brewery
node_brewery -->|"returns JSON"| node_beer
node_client -->|"deserializes as"| node_beer

click node_application "https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/MsscBreweryClientApplication.java"
click node_client "https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/client/BreweryClient.java"
click node_beer "https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/model/BeerDto.java"
click node_customer "https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/model/CustomerDto.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_application,node_beer,node_customer toneTeal
class node_client toneBlue
class node_brewery toneMint
```

## Components

### Other components

- [Spring Boot app](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/MsscBreweryClientApplication.java): `src/main/java/guru/springframework/msscbreweryclient/MsscBreweryClientApplication.java`
- [Brewery client](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/client/BreweryClient.java): `src/main/java/guru/springframework/msscbreweryclient/web/client/BreweryClient.java`
- [Beer DTO](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/model/BeerDto.java): `src/main/java/guru/springframework/msscbreweryclient/web/model/BeerDto.java`
- [Customer DTO](https://github.com/dkhan21/mssc-brewery-client/blob/master/src/main/java/guru/springframework/msscbreweryclient/web/model/CustomerDto.java): `src/main/java/guru/springframework/msscbreweryclient/web/model/CustomerDto.java`
- **Brewery API**

## Connections

- Spring Boot app → Brewery client: registers component
- Brewery client → Brewery API: GET beer
- Brewery API → Beer DTO: returns JSON
- Brewery client → Beer DTO: deserializes as
