Reference

Learning Resources

A curated path into the ideas behind the WINCH backend — watch the talk, skim the slides, explore the sample app, then apply it. Plus deep-dive talks on Domain-Driven Design and the move into software architecture.

The modular monolith, in four steps

The architecture our src/Domain/ layout is built on — from avosalmon's Laracon Online Winter '22 talk. Follow them in order.

1

Watch the talk

The clearest explanation of the idea our src/Domain/ layout is built on: split a single Laravel app into modules with explicit boundaries, instead of letting every class reach into every other.

Modularising the Monolith — Laracon Online Winter '22

Ryuta Hamasaki (avosalmon)

YouTube
2

Skim the slides

Prefer to scan rather than watch? The deck covers the same ground — why a monolith drifts into a big ball of mud, and how module boundaries and dependency rules hold it together.

Modularising the Monolith — slidesSlides

The talk deck, on Speaker Deck.

Speaker Deck · slides
3

Explore the sample app

A small, runnable Laravel app split into modules with enforced boundaries — the directory shape and boundary checks in a project small enough to read end to end.

avosalmon/modular-monolith-laravelGitHub

The companion repository for the talk.

PHP · ★ 203
4

Apply it to WINCH

Now map it onto our codebase. The talk's "modules with boundaries" is exactly our DDD layout — domains talk to each other through Contracts, never by reaching into another domain's internals.

DDD basics

How the codebase splits business logic from HTTP, and what lives in each part of a domain.

Domain boundaries

The rule for crossing domains — Contracts across, Actions within, Models never.

Domain-Driven Design

Where the vocabulary in our DDD chapters — bounded contexts, ubiquitous language, aggregates — comes from.

Domain Driven Design بالعربي — Tech Podcast

with Hassan Shaddad & Ahmed Elemam

YouTube

Becoming a software architect

The mindset shift behind those boundary decisions — from shipping the next feature to designing the system around it.

From a developer to software architect بالعربي — Tech Podcast

with Sameh Deabes & Ahmed Elemam

YouTube
Found a talk, article, or repo that made a pattern in this handbook click? Add it here in the same shape — drop in a ::video-embed or a ::resource-card with a one-line note on what it covers and which chapter it relates to. Keep the list short and curated; this is a shortlist, not a link dump.