|Come for the quick hacks, stay for the epiphanies.
I've rolled my own validators and fixed other people's validation code so many times I don't want to think about it.
If the purpose of all of this is to keep people from reinventing the wheel here are some things you could do that would be really useful.
- Why not concentrate on accumulating validation algorithms from people, unify them with documentation and provide them as plugins to your module and other people's modules?
- Provide easy unit testing even from command line. It is difficult to test from command line even with perl -MCGI when you have a lot of fields, maybe some are from reenrant pages.
- Providing a skeleton module for making new tests will help people reuse code and send back to you too.
- Real world use may not be just a simple regex, business logic and ways to organize rules are more important (this is another whole ball 'o wax / module).
- Even just a collection of validation subroutines which do not depend on each other and can be easily dropped in to one's code would be very helpful. Likewise, I have a lot of routines I've built up over various projects which I would have to drop in somewhere, e.g. email address validation, japanese phonetic conversions, local zipcode formats, double byte numbers, etc. So a way to add your own routines, and a set of tests for different data types to make sure they match, would also be good.
- A homepage which lets people submit code (people can vote on it?) would be interesting.
- Finally an easy way to set business logic rules would be useful.