Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Laravel Applications with DDD x Clean Architect...

Laravel Applications with DDD x Clean Architecture x Vibe Coding

Summary (English)

Constrained Improvisation Development is a practical approach to building AI-era Laravel applications by combining Domain-Driven Design (DDD), Clean Architecture, and Vibe Coding.

As generative AI dramatically accelerates code production, the real challenge is no longer writing code, but preventing meaning from collapsing at unprecedented speed. AI excels at syntax and breadth, but it does not understand business semantics or responsibility boundaries. Without design constraints, “vibe coding” quickly leads to architectural chaos and unmanageable technical debt (Slides 2–3).

This talk proposes a new development style: Constrained Improvisation.
Just like jazz improvisation works only within musical rules, AI-powered development works best when clear design constraints are defined upfront (Slide 4).

Core Idea

DDD provides a shared language and a semantic model that both humans and AI can follow.

Clean Architecture defines strict dependency rules that clearly separate what AI may change from what must be protected.

Vibe Coding is not rejected—but restricted to safe layers, where fast iteration is desirable and recoverable.

Human × AI Role Division

The development process is intentionally split:

Humans decide meaning and boundaries

Event Storming: identify and judge business events

Context Mapping: define bounded contexts

Ubiquitous Language: finalize terminology

Domain Model: define invariants and aggregates

AI executes breadth and speed

Enumerating use cases

Generating controllers, use cases, repositories

Implementing infrastructure and boilerplate

This division is visualized as a six-step process where humans “steer” and AI “rows” (Slides 5–9, 13).

Laravel in the AI Era

The architecture intentionally makes Laravel subordinate to the domain:

Domain layer is framework-independent (pure PHP)

Laravel (Eloquent, Controllers) lives only in outer layers

Directory structure enforces architectural rules by design, preventing AI from touching the domain core directly (Slides 10–11)

Where Vibe Coding Is Allowed

Controllers

Use cases

Infrastructure

Where Vibe Coding Is Forbidden

Domain invariants

Aggregate definitions

Business rules (Slides 12–13)

Benefits and Trade-offs

Merits

Faster development without sacrificing correctness

Higher maintainability and clearer responsibilities

Design artifacts become long-lived AI instructions

Demerits

Higher initial learning and design cost

Overkill for small CRUD-only systems (Slide 14)

Final Message

In the age of AI, design is no longer about drawing diagrams—it is about verbalization.
The teams that win are not those who abandon design, but those who can express intent, constraints, and meaning clearly enough for AI to follow (Slide 15).

“To build fast in the AI era, what we need is not the courage to abandon design, but the resolve to verbalize it.”

Avatar for Takayuki

Takayuki PRO

January 16, 2026
Tweet

More Decks by Takayuki

Other Decks in Programming

Transcript