# bin-hy/go-campus architecture

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

- Interactive diagram: https://gitdiagram.com/bin-hy/go-campus
- Repository: https://github.com/bin-hy/go-campus

## Overview

GoCampus is a Go-centered engineering-learning repository, not a single runtime service. Its principal workflow is for a learner to study a topic, work through runnable exercises or middleware experiments, and use the resulting understanding in architecture and interview practice. The code tree supports the fundamentals, backend, architecture, Kubernetes, and route-practice branches shown here. README-described documentation, project, and AI-learning areas are not mapped as runtime components because their source trees are absent from the supplied tree.

Main entry points: [`code/backend`](https://github.com/bin-hy/go-campus/tree/main/code/backend) (Backend Stack), [`code/k8s`](https://github.com/bin-hy/go-campus/tree/main/code/k8s) (Kubernetes Code), [`code/architect`](https://github.com/bin-hy/go-campus/tree/main/code/architect) (Architecture Labs), [`code/phase1`](https://github.com/bin-hy/go-campus/tree/main/code/phase1) (Go Language)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_fundamentals["Go Fundamentals"]
  node_go["Go Language"]
  node_algorithms["Algorithms"]
  node_route["Route Practice"]
end

subgraph group_backend["Backend Systems"]
  node_backend_stack["Backend Stack"]
  node_mysql["MySQL Labs"]
  node_redis["Redis Labs"]
  node_kafka["Kafka Labs"]
  node_service_patterns["Service Patterns"]
  node_agent_backend["Agent Backend"]
end

subgraph group_architecture["Architecture Practice"]
  node_architect["Architecture Labs"]
  node_pprof["Profiling Labs"]
end

subgraph group_applied["Applied Tracks"]
  node_k8s["Kubernetes Code"]
  node_k8s_client["Client Practice"]
  node_k8s_controller["Controllers"]
  node_k8s_operator["Operator"]
end

node_learner(("Learner"))
node_interview(("Interview Readiness"))

node_learner -->|"practices"| node_go
node_learner -->|"practices"| node_algorithms
node_learner -->|"builds with"| node_route
node_learner -->|"experiments with"| node_backend_stack
node_backend_stack -->|"covers"| node_mysql
node_backend_stack -->|"covers"| node_redis
node_backend_stack -->|"covers"| node_kafka
node_backend_stack -->|"covers"| node_service_patterns
node_backend_stack -->|"covers"| node_agent_backend
node_learner -->|"practices"| node_k8s
node_k8s -->|"includes"| node_k8s_client
node_k8s -->|"includes"| node_k8s_controller
node_k8s -->|"includes"| node_k8s_operator
node_learner -->|"runs experiments"| node_architect
node_architect -->|"includes"| node_pprof
node_learner -->|"prepares for"| node_interview

click node_go "https://github.com/bin-hy/go-campus/tree/main/code/phase1"
click node_algorithms "https://github.com/bin-hy/go-campus/tree/main/code/phase2"
click node_route "https://github.com/bin-hy/go-campus/tree/main/code/route"
click node_backend_stack "https://github.com/bin-hy/go-campus/tree/main/code/backend"
click node_mysql "https://github.com/bin-hy/go-campus/tree/main/code/backend/01-mysql"
click node_redis "https://github.com/bin-hy/go-campus/tree/main/code/backend/02-redis"
click node_kafka "https://github.com/bin-hy/go-campus/tree/main/code/backend/03-kafka"
click node_service_patterns "https://github.com/bin-hy/go-campus/tree/main/code/backend/04-microservice"
click node_agent_backend "https://github.com/bin-hy/go-campus/tree/main/code/backend/06-agent-backend"
click node_k8s "https://github.com/bin-hy/go-campus/tree/main/code/k8s"
click node_k8s_client "https://github.com/bin-hy/go-campus/tree/main/code/k8s/client"
click node_k8s_controller "https://github.com/bin-hy/go-campus/tree/main/code/k8s/controller"
click node_k8s_operator "https://github.com/bin-hy/go-campus/tree/main/code/k8s/operator"
click node_architect "https://github.com/bin-hy/go-campus/tree/main/code/architect"
click node_pprof "https://github.com/bin-hy/go-campus/tree/main/code/architect/pprof-lab"

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_go,node_algorithms,node_route,node_interview toneBlue
class node_backend_stack,node_mysql,node_redis,node_kafka,node_service_patterns,node_agent_backend toneAmber
class node_architect,node_pprof toneMint
class node_k8s,node_k8s_client,node_k8s_controller,node_k8s_operator toneRose
class node_learner toneIndigo
```

## Components

### Go Fundamentals

- [Go Language](https://github.com/bin-hy/go-campus/tree/main/code/phase1): `code/phase1`
- [Algorithms](https://github.com/bin-hy/go-campus/tree/main/code/phase2): `code/phase2`
- [Route Practice](https://github.com/bin-hy/go-campus/tree/main/code/route): `code/route`

### Backend Systems

- [Backend Stack](https://github.com/bin-hy/go-campus/tree/main/code/backend): `code/backend`
- [MySQL Labs](https://github.com/bin-hy/go-campus/tree/main/code/backend/01-mysql): `code/backend/01-mysql`
- [Redis Labs](https://github.com/bin-hy/go-campus/tree/main/code/backend/02-redis): `code/backend/02-redis`
- [Kafka Labs](https://github.com/bin-hy/go-campus/tree/main/code/backend/03-kafka): `code/backend/03-kafka`
- [Service Patterns](https://github.com/bin-hy/go-campus/tree/main/code/backend/04-microservice): `code/backend/04-microservice`
- [Agent Backend](https://github.com/bin-hy/go-campus/tree/main/code/backend/06-agent-backend): `code/backend/06-agent-backend`

### Architecture Practice

- [Architecture Labs](https://github.com/bin-hy/go-campus/tree/main/code/architect): `code/architect`
- [Profiling Labs](https://github.com/bin-hy/go-campus/tree/main/code/architect/pprof-lab): `code/architect/pprof-lab`

### Applied Tracks

- [Kubernetes Code](https://github.com/bin-hy/go-campus/tree/main/code/k8s): `code/k8s`
- [Client Practice](https://github.com/bin-hy/go-campus/tree/main/code/k8s/client): `code/k8s/client`
- [Controllers](https://github.com/bin-hy/go-campus/tree/main/code/k8s/controller): `code/k8s/controller`
- [Operator](https://github.com/bin-hy/go-campus/tree/main/code/k8s/operator): `code/k8s/operator`

### Other components

- **Learner**
- **Interview Readiness**

## Connections

- Learner → Go Language: practices
- Learner → Algorithms: practices
- Learner → Route Practice: builds with
- Learner → Backend Stack: experiments with
- Backend Stack → MySQL Labs: covers
- Backend Stack → Redis Labs: covers
- Backend Stack → Kafka Labs: covers
- Backend Stack → Service Patterns: covers
- Backend Stack → Agent Backend: covers
- Learner → Kubernetes Code: practices
- Kubernetes Code → Client Practice: includes
- Kubernetes Code → Controllers: includes
- Kubernetes Code → Operator: includes
- Learner → Architecture Labs: runs experiments
- Architecture Labs → Profiling Labs: includes
- Learner → Interview Readiness: prepares for
