Concepts
The ideas PouryaKit is built on, one page each, in the order to learn them.
PouryaKit gives every Feature the same shape: a command or query, its validator and handler, its data access and its endpoint. The Kit runs the rest. These pages explain the ideas behind that shape.
Read them in order: each page builds on the ones before it. The words in them are the Kit's own, and each links to its entry in the glossary the first time it appears.
Where the rules live
These pages explain and link. The guarantees, options and messages are stated once, in the Capability pages. When a page here and a Capability page seem to differ, the Capability page is the rule.
The core
Host and Module
The application you deploy, and the business boundaries inside it.
Operation, Result and Error
One command or query from entry to outcome, and how it says it failed.
Operation Context, Actor and tenant
Who caused an Operation, for which tenant, and in which chain of work.
Unit of Work
The one owner of every commit, and why your handler never saves.
Reactions and messages
Domain Event
A fact inside a Module, handled in the same commit.
Outbox and Notifications
Reactions that run after the commit, outside the Module's own data.
Integration Events
Facts one Module publishes for the others.
Snapshots and Tombstones
The current state of an aggregate, for a Module that keeps a copy.
The Host at work
Composition and startup checks
How a Host refuses its own mistakes before it serves.
Delayed and recurring commands
Commands that run later, or on a cadence.