# Tempest Source Traits Contains everything required for implementing Tempest `Source` libraries. The main components include: - `Msg` & `MsgId` type definitions - `Source` trait for working with sources. - `SourceBuilder` trait for instantiating a struct that implements `Source`. - `SourceResult`, `SourcePollResult`, and other common configuration enums Take a look at these implementation examples: - [Mock](https://github.com/grippy/tempest/tree/master/tempest-source-mock) - [Redis Streams](https://github.com/grippy/tempest/tree/master/tempest-source-redis)