node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



Lawmaster is a simple general purpose validation module that can be used in any situation where data needs to be validated and return information about the errors present.

Example Usage

var validate = require('lawmaster');
var phoneNumber = '(123) 456-7890';
var phoneValidators = [presence, string, phone];
validate(phoneNumber, phoneValidators, function(errors) {
  if (errors !== true) {
    console.log(phoneNumber+' has the following errors:');
    for (var error in errors) {
      console.log("  - "+errors[error]);
  } else {
    console.log('All validators passed.');
function presence(data) {
  if ((data !== undefined) || (data !== ''))
    return true;
    return 'Data is not present.';
function string(data) {
  if (typeof(data) === 'string')
    return true;
    return 'Data is not a string.'
function phone(data) {
  if (/^\+?\s*?1?\s*?\(?\d{3}\)?-?\s*?\d{3}-?\d{4}$/.test(data))
    return true;
    return 'Data is not a phone number.';


Copyright (c) 2012, Joe Rozner (MIT)