# Low Level Design
All Low Level Design notes →1 — Hexagonal Architecture
Isolates core domain logic behind ports and adapters so infrastructure choices like databases or messaging can be swapped without touching business rules.
2 — Clean Architecture
Layers a system into entities, use cases, interface adapters, and frameworks so dependencies always point inward toward stable business rules.
3 — Domain-Driven Design Essentials
Introduces bounded contexts, aggregates, and ubiquitous language as the core tools for modeling complex business domains in code.
4 — Event-Driven Design
Decouples components by having them communicate through published events rather than direct calls, trading immediate consistency for looser coupling.
5 — CQRS Basics
Splits read and write models into separate paths so each can be optimized and scaled independently instead of sharing one general-purpose model.
6 — Event Sourcing Basics
Persists state as an append-only log of domain events rather than the current snapshot, letting past state be reconstructed by replay.
7 — Plug-in Architectures
Defines a stable extension point contract so third-party or optional modules can be discovered and loaded without modifying the host application.
8 — Extensible Framework Design
Covers the inversion-of-control hooks, template methods, and configuration surfaces that let a framework be extended by consumers without forking it.