valid (cargo): Validate custom types by composing primitive validation functions. Use one common API for validating all kind of business rules including aspects of the application state. One common error type for all kind of constraint violations. It is designed to help with error messages that are meaningful to the user of an application. 
Keywords: validate|validation|constraints|business-rules|user-input|composable|composition|custom-types