# sraynitjsr/2026_lld_using_golang architecture

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

- Interactive diagram: https://gitdiagram.com/sraynitjsr/2026_lld_using_golang
- Repository: https://github.com/sraynitjsr/2026_lld_using_golang

## Overview

This repository is a Go command-line showcase of low-level design patterns. The principal workflow is running the program, which prints a banner and dispatches to the creational, behavioral, structural, and general LLD sections; implemented sections then run their demonstrations. The creational demos cover singleton, factory method, abstract factory, builder, and prototype; the behavioral demo exercises a support-ticket handler chain. The README lists additional patterns, but the supplied tree has no corresponding implementations for most of them. Structural and general LLD are currently headings/placeholders. Arrows reflect calls visible in sampled source.

Main entry points: [`creational/start.go`](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/start.go) (Creational section), [`main.go`](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/main.go) (Program entry), [`behavioral/start.go`](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/behavioral/start.go) (Behavioral section), [`creational/singleton.go`](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/singleton.go) (Singleton demo)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Program entry"]
  node_main["Program entry<br/>[main.go]"]
end

subgraph group_creational["Creational patterns"]
  node_creational_start["Creational section<br/>[start.go]"]
  node_singleton["Singleton demo<br/>[singleton.go]"]
  node_factory_method["Factory method demo<br/>[factory_method.go]"]
  node_abstract_factory["Abstract factory demo"]
  node_builder["Builder demo<br/>[builder.go]"]
  node_prototype["Prototype demo<br/>[prototype.go]"]
end

subgraph group_behavioral["Behavioral patterns"]
  node_behavioral_start["Behavioral section<br/>[start.go]"]
  node_chain_demo["Support chain demo"]
end

subgraph group_other["Other sections"]
  node_structural_start["Structural section<br/>[start.go]"]
  node_lld_section["LLD section<br/>[lld.go]"]
end

node_cli_user(("CLI user"))

node_cli_user -->|"runs"| node_main
node_main -->|"calls"| node_creational_start
node_main -->|"calls"| node_behavioral_start
node_main -->|"calls"| node_structural_start
node_main -->|"calls"| node_lld_section
node_creational_start -->|"runs"| node_singleton
node_creational_start -->|"runs"| node_factory_method
node_creational_start -->|"runs"| node_abstract_factory
node_creational_start -->|"runs"| node_builder
node_creational_start -->|"runs"| node_prototype
node_behavioral_start -->|"runs"| node_chain_demo

click node_main "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/main.go"
click node_creational_start "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/start.go"
click node_singleton "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/singleton.go"
click node_factory_method "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/factory_method.go"
click node_abstract_factory "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/abstract_factory.go"
click node_builder "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/builder.go"
click node_prototype "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/prototype.go"
click node_behavioral_start "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/behavioral/start.go"
click node_chain_demo "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/behavioral/chain_of_responsibility.go"
click node_structural_start "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/structural/start.go"
click node_lld_section "https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/low_level_design/lld.go"

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_main,node_cli_user toneBlue
class node_creational_start,node_singleton,node_factory_method,node_abstract_factory,node_builder,node_prototype toneAmber
class node_behavioral_start,node_chain_demo toneMint
class node_structural_start,node_lld_section toneRose
```

## Components

### Program entry

- [Program entry](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/main.go): `main.go`

### Creational patterns

- [Creational section](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/start.go): `creational/start.go`
- [Singleton demo](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/singleton.go): `creational/singleton.go`
- [Factory method demo](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/factory_method.go): `creational/factory_method.go`
- [Abstract factory demo](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/abstract_factory.go): `creational/abstract_factory.go`
- [Builder demo](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/builder.go): `creational/builder.go`
- [Prototype demo](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/creational/prototype.go): `creational/prototype.go`

### Behavioral patterns

- [Behavioral section](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/behavioral/start.go): `behavioral/start.go`
- [Support chain demo](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/behavioral/chain_of_responsibility.go): `behavioral/chain_of_responsibility.go`

### Other sections

- [Structural section](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/structural/start.go): `structural/start.go`
- [LLD section](https://github.com/sraynitjsr/2026_lld_using_golang/blob/main/low_level_design/lld.go): `low_level_design/lld.go`

### Other components

- **CLI user**

## Connections

- CLI user → Program entry: runs
- Program entry → Creational section: calls
- Program entry → Behavioral section: calls
- Program entry → Structural section: calls
- Program entry → LLD section: calls
- Creational section → Singleton demo: runs
- Creational section → Factory method demo: runs
- Creational section → Abstract factory demo: runs
- Creational section → Builder demo: runs
- Creational section → Prototype demo: runs
- Behavioral section → Support chain demo: runs
