# Trogon.Commanded v0.37.0 - Table of Contents Extend Commanded package ## Pages - [Trogon.Commanded](readme.md) - [Changelog](changelog.md) ## Modules - [Trogon.Commanded](Trogon.Commanded.md): Extend `Commanded` package. A swiss army knife for applications following Domain-Driven Design (DDD), Event Sourcing (ES), and Command and Query Responsibility Segregation (CQRS). - [Trogon.Commanded.Aggregate.StatelessLifespan](Trogon.Commanded.Aggregate.StatelessLifespan.md): Stops the aggregate after a command, event or error. - [Trogon.Commanded.CommandHandler](Trogon.Commanded.CommandHandler.md): Defines a module as a "Command Handler". For more information about commands, please read the following - [Trogon.Commanded.CommandRouter](Trogon.Commanded.CommandRouter.md): Command routing macro to allow configuration of each command to its command handler. - [Trogon.Commanded.EventStore.JsonbSerializer](Trogon.Commanded.EventStore.JsonbSerializer.md): A JSONB serializer based on events defined by `Trogon.Commanded.Event`. - [Trogon.Commanded.EventStore.ProtobufJsonbSerializer](Trogon.Commanded.EventStore.ProtobufJsonbSerializer.md): A JSONB serializer using `Protobuf.JSON`. - [Trogon.Commanded.Helpers](Trogon.Commanded.Helpers.md): A Swiss Army Knife Helper Module. - [Trogon.Commanded.Id](Trogon.Commanded.Id.md): A module for dealing IDs. - [Trogon.Commanded.ObjectId](Trogon.Commanded.ObjectId.md): Macro for defining type-safe, domain-specific object IDs. - [Trogon.Commanded.ProtobufMapper](Trogon.Commanded.ProtobufMapper.md): Protocol for encoding and decoding `Protobuf` structs. - [Trogon.Commanded.QueryHandler](Trogon.Commanded.QueryHandler.md): Defines a module as a "Query Handler". For more information about queries, please read the following - [Trogon.Commanded.TypeProvider](Trogon.Commanded.TypeProvider.md): Implements `Commanded.EventStore.TypeProvider` behavior. Using macros to generate the behavior. - [Trogon.Commanded.UnionObjectId](Trogon.Commanded.UnionObjectId.md): Discriminated union type that can hold any of multiple `Trogon.Commanded.ObjectId` types. - Struct - [Trogon.Commanded.Aggregate](Trogon.Commanded.Aggregate.md): Defines "Aggregate" modules. - [Trogon.Commanded.Command](Trogon.Commanded.Command.md): Defines "Command" modules. - [Trogon.Commanded.Entity](Trogon.Commanded.Entity.md): Defines "Entity" modules. - [Trogon.Commanded.Enum](Trogon.Commanded.Enum.md): Defines an Enum type module. - [Trogon.Commanded.Event](Trogon.Commanded.Event.md): Defines "Event" modules. - [Trogon.Commanded.ValueObject](Trogon.Commanded.ValueObject.md): Defines "Value Object" modules. - Test Support - [Trogon.Commanded.TestSupport.CommandHandlerCase](Trogon.Commanded.TestSupport.CommandHandlerCase.md): This module helps with test cases for testing aggregate states, and command handlers. - Exceptions - [Trogon.Commanded.ObjectId.ValidationError](Trogon.Commanded.ObjectId.ValidationError.md): Raised when an ObjectId value is invalid. - [Trogon.Commanded.TypeProvider.UnregisteredMappingError](Trogon.Commanded.TypeProvider.UnregisteredMappingError.md)