(updated: )
2 min read

Validot

performance-first, compact library for advanced model validation

Table of Contents

About

Validot is a performance-first, compact library for advanced model validation. Using a simple declarative fluent interface, it efficiently handles classes, structs, nested members, collections, nullables, plus any relation or combination of them. It also supports translations, custom logic extensions with tests, and DI containers.

Scope of work

I’m 100% behind the original Validot library: design, implementation, release and maintenance. Since 2020, I accepted few contributions from the community.

My scope of work includes:

  • the entire architecture and code design
  • research on the dotnet performance edge-cases and low-allocation strategies
  • benchmarks
  • CI/CD pipelines na devops scripts
  • documentation and examples
  • community support and contributions management
  • release management and versioning
  • bug fixing and maintenance
  • feature requests and implementation

Validot is archived

Validot has been my public pet project since 2020, a proof-of-concept turned into a standalone, fully-featured NuGet library. Its core focus is on performance and a low-allocation approach. On release day, Validot was 2.5 times faster while consuming 8 times less memory than the industry’s gold standard: FluentValidation! I pushed dotnet memory performance and optimizations to their limits. And I’m proud of my work.

Given my daily responsibilities and other coding projects, I have to confess that it seems improbable I’ll have time to keep working on Validot.

I appreciate all the contributors, and especially, I extend my gratitude to Jeremy Skinner for his work on FluentValidation. I genuinely believe I played a role in the open source community by motivating Jeremy to enhance FluentValidation’s performance.

Source code

Nuget

Resources