# Domain Module
- How to add a domain module?
- What goes into a domain module?
- How to define a command?
- How to add a validation to a command?
- What goes into domain logic?
- How to call a domain logic function inside pre-condition?
- How to define a default input value for a command?
- How to define an event sourced command?
- How to define an event handler?
- What is a dig in k-lang?
- How to call a domain logic function inside implementation?
- Where does the implementation of a command / domainLogic go?
- How to use the domain-logic-ref in command code?
- What are the different ways of invoking a command?
- What all happens when a command is invoked?
- How to handle exception that occur in event handler code?
- How to run event handler outside server-mode?
- How to write a complex validation?
- what is the usage of post in a command?
- How to interpret the output of a command?
- What is a lifecycle of a command-set?
- What is a lifecycle of a domain-logic object?
- Why readDB should not be referenced by an event-sourced command?
- What is a stable number in event-sourcing system?
- When do we define a command queue?
- When do you write an event handler?