checkt

Safe (chainable) type checks

npm install checkt
14 downloads in the last week
28 downloads in the last month

checkt

Build Status Dependency Status devDependency Status

What is it?

checkt is a small library for safe (chainable) type checks written in CoffeeScript and usable in any JavaScript environment.

Currently supported are:

  • Browser
  • CommonJS environments (Node.js)

The checkt library exposes the checkt function. (An alias is the check object, which has exactly the same functionality.)

Browser
Embed js/checkt.js in your HTML file for development purposes and js/checkt.min.js for production use.

Node.js
Either use npm with
npm install checkt
or add checkt to to the package.json of your project.

Usage

JavaScript

// Method chaining examples
check('test').not.string(function() {
 console.log('not a string');
}).otherwise(function() {
 console.log('Logically, should be a string');
}).number(function(v) {
 console.log("its a number with value: " + v);
});

// Instead of using method chaing, you can also use
// a plain object with the type as the key and the value is the callback function
check({}, {
  object: function() {
   console.log('Is an object');
  },
  number: function() {
   console.log('Is a number');
  }
});

// Multiple keys seperated by a comma also work, just make sure the key is
// written as a string
check('test', {
  'string, number': function() {
   console.log('Either string or number');
  }
});

CoffeeScript

# Method chaining examples
check('test')
  .not.string(-> console.log 'not a string')
  .else(-> console.log 'Logically, should be a string')
  .number((v) -> console.log("its a number with value: #{v}"))

# Instead of using method chaing, you can also use
# a plain object with the type as the key and the value is the callback function
check {},
  object: -> console.log 'Is an object'
  number: -> console.log 'Is a number'

# Multiple keys seperated by a comma also work, just make sure the key is
# written as a string
check 'test',
  'string, number': -> console.log 'Either string or number'

License

checkt is public domain. See UNLICENSE.md for more information.

npm loves you