Skip to content

Commit fd1868a

Browse files
committed
docs(architecture): clarify application inbound port as use-case boundary
1 parent f646088 commit fd1868a

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

docs/guides/how-to-explore-hexagonal-architecture.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ Architecture decisions are **compiled into the generator and materialized in the
2929
* [Resource Model](#-resource-model--better-than-just-files)
3030
* [Verified Architecture — Testing Strategy](#-verified-architecture--testing-strategy)
3131
* [What You Learn from This Repo](#-what-you-learn-from-this-repo)
32+
* [Application Inbound Port (Use Case Boundary)](#-application-inbound-port-use-case-boundary)
3233
* [Try It — CLI Delivery Adapter](#-try-it--cli-delivery-adapter)
3334
* [Architecture Execution Path](#-architecture-execution-path-mental-model)
3435
* [Final Thoughts](#-final-thoughts)
@@ -297,6 +298,28 @@ who want to study, evaluate, and evolve executable architecture in real systems.
297298

298299
---
299300

301+
## 🎯 Application Inbound Port (Use Case Boundary)
302+
303+
In Codegen Blueprint, the **primary hexagonal boundary** at the application edge is an **inbound port** (a use-case contract):
304+
305+
- `application.port.in.project.CreateProjectPort`
306+
307+
This is **not a domain port**.
308+
It represents a **use case entrypoint** owned by the application layer.
309+
310+
Delivery mechanisms (CLI today, REST tomorrow) are **inbound adapters** that translate input into a `CreateProjectCommand` and invoke this port.
311+
312+
```java
313+
public interface CreateProjectPort {
314+
CreateProjectResult handle(CreateProjectCommand createProjectCommand);
315+
}
316+
```
317+
**Key idea:**
318+
Adapters depend on the port.
319+
The port does **not** depend on adapters.
320+
321+
---
322+
300323
## 🎮 Try It — CLI Delivery Adapter
301324

302325
This section demonstrates the **actual, supported CLI contract** for Codegen Blueprint **1.0.0 GA** when generating a **Hexagonal Architecture** project.

0 commit comments

Comments
 (0)