Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
69 lines (54 sloc) 1.87 KB

revalidator Build Status

A cross-browser / node.js validator used by resourceful and flatiron.


The core of revalidator is simple and succinct: revalidator.validate(obj, schema):

  var revalidator = require('revalidator');
  console.dir(revalidator.validate(someObject, {
    properties: {
      url: {
        description: 'the url the object should be stored at',
        type: 'string',
        pattern: '^/[^#%&*{}\\:<>?\/+]+$',
        required: true
      challenge: {
        description: 'a means of protecting data (insufficient for production, used as example)',
        type: 'string',
        minLength: 5
      body: {
        description: 'what to store at the url',
        type: 'any',
        default: null

This will return with a value indicating if the obj conforms to the schema. If it does not, a descriptive object will be returned containing the errors encountered with validation.

    valid: true // or false
    errors: [/* Array of errors if valid is false */]

In the browser, the validation function is exposed on window.validate by simply including revalidator.js.


Installing npm (node package manager)

  $ curl | sh

Installing revalidator

  $ [sudo] npm install revalidator


All tests are written with vows and should be run with npm:

  $ npm test

Author: Charlie Robbins, Alexis Sellier

Contributors: Fedor Indutny, Bradley Meck, Laurie Harper

License: Apache 2.0