{"_id":"typedjs","_rev":"41-c9c0c6cf3753813e25e2dfe7f20dc4f8","name":"typedjs","description":"Dynamic type checking for JavaScript","dist-tags":{"latest":"0.2.2"},"versions":{"0.0.5":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Lightweight program specifications for testing JavaScript","version":"0.0.5","homepage":"http://typedjs.com/","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"index.js","engines":{"node":"~0.6.9"},"bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"koala-t"},"dependencies":{"esprima":"0.9.7"},"devDependencies":{"vows":"latest","koala-t":"latest"},"optionalDependencies":{},"_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"_id":"typedjs@0.0.5","_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.6.9","_defaultsLoaded":true,"dist":{"shasum":"78134538c88ba06613a9c2785b71dcba9c501eaf","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.0.5.tgz","integrity":"sha512-v6Av7woG6Xe5/t2ql7gBVc2i6tUZZORqZr4PaFFW4BJ4KZZyw879FuPnxvcX52dMNEm+eMOncOHoRJti3ERu6g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqkJwRq6Ondr+f5W4d1PAxZq8P5aDMllhdVCcZ1awNNgIhAKKLhQuPu7EsWoBGgMSNFt9YoLUm4cWyItJIXBUIKdTA"}]},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}],"directories":{}},"0.0.7":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Lightweight program specifications for testing JavaScript","version":"0.0.7","homepage":"http://typedjs.com/","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"index.js","bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"koala-t"},"dependencies":{"esprima":"0.9.7"},"devDependencies":{"vows":"latest","koala-t":"latest"},"optionalDependencies":{},"engines":{"node":"*"},"_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"_id":"typedjs@0.0.7","_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.7.4","_defaultsLoaded":true,"dist":{"shasum":"7e846c86522befe47480d0e3ef146e34c12113de","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.0.7.tgz","integrity":"sha512-yz2PXIotK3vFOahUTlMD89OwTyb+fgzcMD+hsATVlsqPCu0tyfFaOu63DSJ33eQgsA/VXhNgJaEa2dbUHVJlxg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFllCZC+psqRJBftUX8DrWTqGbM8If0HgJP6lfQsBOjNAiB/A8U+hZrj8aPUbrjVIq1KoyzLYKkGdkaP0PK9pQwtrg=="}]},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}],"directories":{}},"0.0.9":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Lightweight program specifications for testing JavaScript","version":"0.0.9","homepage":"http://typedjs.com/","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"./lib/index.js","bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"cake test"},"dependencies":{"esprima":"0.9.7"},"devDependencies":{"coffee-script":"latest","vows":"latest"},"optionalDependencies":{},"engines":{"node":"*"},"_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"_id":"typedjs@0.0.9","_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.6.10","_defaultsLoaded":true,"dist":{"shasum":"a62c2d403f320b6cd2611bcb6ce2b3be5756944d","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.0.9.tgz","integrity":"sha512-FOCg86XLD24xijo7W+5R8+kPPdmdmMTY04pKvofvbvFZ3L6E6nXsEFw3hlWBMk1OWl5oEZNQ4Naxv15ML1XpbQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGbqzgFkQBSgCdLZxMNy+TVeZnsgkuPFARTbSb2eBHzQAiEA0gaxwFRUhnfCjdcp0HLIiH7IZPeK2Qj9URLNSesUat0="}]},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}],"directories":{}},"0.1.2":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Lightweight program specifications for testing JavaScript","version":"0.1.2","homepage":"http://typedjs.com/","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"./lib/index.js","bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"cake test"},"dependencies":{"esprima":"0.9.7"},"devDependencies":{"coffee-script":"latest","vows":"latest"},"optionalDependencies":{},"engines":{"node":"*"},"_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"_id":"typedjs@0.1.2","_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.6.10","_defaultsLoaded":true,"dist":{"shasum":"97bc67de47389293de0010492b53d88f7a7218c5","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.1.2.tgz","integrity":"sha512-L4UumZFgbHgGWrER/zwI7Xo32S9dV1AOcjNuohLShWbehBf8TNDhl2cnYOQKayTiyvI6V6AooaPtaVhgyoAnaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDE+O56Kq3A5CMy+lwnkGOrY7yir5OXiVRE7hfYuMrZHAIgaev1kWyWbn8uzZwDc7SOEloG++79lfXgcTMyyKeLBHM="}]},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}],"directories":{}},"0.1.3":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Lightweight program specifications for testing JavaScript","version":"0.1.3","homepage":"http://typedjs.com/","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"./lib/index.js","bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"cake test"},"dependencies":{"esprima":"0.9.7"},"devDependencies":{"coffee-script":"latest","vows":"latest"},"optionalDependencies":{},"engines":{"node":"*"},"_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"_id":"typedjs@0.1.3","_engineSupported":true,"_npmVersion":"1.1.4","_nodeVersion":"v0.6.12","_defaultsLoaded":true,"dist":{"shasum":"ae223f68ddb711f76aa26f39858ef5bf1d88f4fa","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.1.3.tgz","integrity":"sha512-ztFk/28zCN2o7aV1yqbErGF04wyYEoS7QDA7e1NMRBzq2FA2SuJ+ec8CB+N/T9ldpVj8T6SDYqhSWYE5q72G0w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGPG0jFJQzixKGWB+prLkVpKdNCbDapWf8DSkNq6YGGCAiEA4zJvsg1SZRE6jllaImqr+JaaDK4wwEeIs54orD7PnCA="}]},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}],"directories":{}},"0.2.1":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Dynamic type checking for JavaScript","version":"0.2.1","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"./lib/index.js","bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"testla test"},"bundleDependencies":["parser.js","fn.js"],"dependencies":{"esprima":"*","dune":"*","tg":"*"},"devDependencies":{"testla":"*"},"engines":{"node":"*"},"readme":"# node-typedjs\n\n[![Build Status](https://secure.travis-ci.org/goatslacker/node-typedjs.png)](http://travis-ci.org/goatslacker/node-typedjs)\n\nTypedJS lets you annotate your JavaScript functions with Haskell-like type signatures and then transforms your code to perform type checking at run time.\n\n## Install\n\n    npm install typedjs\n\n## Usage\n\n\n### Transform your code\n\n#### In your project\n\n    var typedjs = require('typedjs')\n    var fs = require('fs')\n    var code = fs.readFileSync('file_name.js')\n    var transformedCode = typedjs.transform(code)\n\n#### From the CLI\n\n    typedjs file_name.js > output_file.js\n\n\n### Quickcheck your code\n\n    var typedjs = require('typedjs')\n\n    function addOne(n) {\n      return n + 1\n    }\n\n    typedjs.quickcheck('Number -> Number', addOne)\n\n\n### Using require\n\nYou can use `typedjs.require()` in your node programs to transform a file\nand require it.\n\nThis is useful for your unit tests or your dev environments.\n\n    var typedjs = require('typedjs')\n    var someModule = typedjs.require('someModule')\n\n    // you can then use `someModule` just as you would if you would've imported\n    // it using Node's `require`\n    someModule.aFunction()\n\n## License\n\n[MIT-LICENSE](http://josh.mit-license.org)\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/goatslacker/node-typedjs/issues"},"_id":"typedjs@0.2.1","dist":{"shasum":"980c2fe525ebf376b04eaf32f2b5bf898acc2156","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.2.1.tgz","integrity":"sha512-ldXYbpc5iinKvGOcTC/9gJnYTcOKmOvEfix+DicSN8U7Y7PFGxPsvO9dPzfGs8S4kCOqyVIoev2ocKA5jjJ5eg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDoNaRcC0Ii0/BhNDO65QwaztoTve9nUIXCfJyoU74H0AiEA88J3wcYZG6Z5/w1W7TOsNTaTu/chQmgsMB3t+Sjy5Uc="}]},"_from":".","_npmVersion":"1.2.21","_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}]},"0.2.2":{"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"name":"typedjs","description":"Dynamic type checking for JavaScript","version":"0.2.2","license":"MIT","repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"},"main":"./lib/index.js","bin":{"typedjs":"./bin/typedjs"},"scripts":{"test":"testla test"},"bundleDependencies":["parser.js"],"dependencies":{"fu":"*","esprima":"*","dune":"*","tg":"*"},"devDependencies":{"testla":"*"},"engines":{"node":"*"},"readme":"# node-typedjs\n\n[![Build Status](https://secure.travis-ci.org/goatslacker/node-typedjs.png)](http://travis-ci.org/goatslacker/node-typedjs)\n\nTypedJS lets you annotate your JavaScript functions with Haskell-like type signatures and then transforms your code to perform type checking at run time.\n\n## Install\n\n    npm install typedjs\n\n## Usage\n\n\n### Transform your code\n\n#### In your project\n\n    var typedjs = require('typedjs')\n    var fs = require('fs')\n    var code = fs.readFileSync('file_name.js')\n    var transformedCode = typedjs.transform(code)\n\n#### From the CLI\n\n    typedjs file_name.js > output_file.js\n\n\n### Quickcheck your code\n\n    var typedjs = require('typedjs')\n\n    function addOne(n) {\n      return n + 1\n    }\n\n    typedjs.quickcheck('Number -> Number', addOne)\n\n\n### Using require\n\nYou can use `typedjs.require()` in your node programs to transform a file\nand require it.\n\nThis is useful for your unit tests or your dev environments.\n\n    var typedjs = require('typedjs')\n    var someModule = typedjs.require('someModule')\n\n    // you can then use `someModule` just as you would if you would've imported\n    // it using Node's `require`\n    someModule.aFunction()\n\n## License\n\n[MIT-LICENSE](http://josh.mit-license.org)\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/goatslacker/node-typedjs/issues"},"_id":"typedjs@0.2.2","dist":{"shasum":"7502ccc9e533e285d30a8e292c2ef697e1670f0f","tarball":"https://registry.npmjs.org/typedjs/-/typedjs-0.2.2.tgz","integrity":"sha512-HPPli2WjoyprcjNLlyJSAdskoPu8WHE81oZkKn/uiqx+q9hO5PHb5s0pGGgYdA/blB4pLT1FlJaBCyp7uxi7sA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0QXnyZXzAkFUP0RRBucVS/hcs/jdJcEYBVJUg+PAa8QIgOsh+9u8WmXlkEmIwWZInqdI6kVcPOhDyW7oHLeow1dM="}]},"_from":".","_npmVersion":"1.2.25","_npmUser":{"name":"goatslacker","email":"josh@goatslacker.com"},"maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}]}},"readme":"# node-typedjs\n\nThis is the [TypedJS](http://typedjs.com) module for node.js\n\nTypedJS lets you annotate your JavaScript functions with Haskell-like type signatures and then runs a set of automated tests against those functions.\n\nFor more information visit the [TypedJS GitHub repo](https://github.com/Proxino/TypedJS)\n\n## Install\n\nIn your project\n\n    npm install typedjs\n\nGlobally to check all your projects\n\n    npm install typedjs -g\n\n## API\n\n### Adding single tests and running them\n\n    var typedjs = require('typedjs');\n    typedjs.addTest('foo :: Number -> Number', function foo(n) {\n      return n;\n    });\n    typedjs.runTests(); // will output to console.log\n\nYou can also use a callback if you prefer\n\n    typedjs.runTests(function (data) {\n      // the data that would've been passed to console.log\n      // is sent here instead.\n    });\n\n### Running against a file\n\n    var typedjs = require('typedjs');\n    var path = require('path');\n    typedjs.runTests(path.join(__dirname, 'myFile.js'), function (data) {\n      // this is an optional callback\n      // data will be sent to console.log by default.\n    });\n\n### Comes with an executable\n\n    $ typedjs your_file.js\n\n## Credits\n\n* TypedJS - [Ethan Fast](http://ethanfast.com/)\n* node-typedjs - [Josh Perez](http://www.goatslacker.com)\n\n## License\n\n[MIT-LICENSE](http://josh.mit-license.org)\n","maintainers":[{"name":"goatslacker","email":"josh@goatslacker.com"}],"time":{"modified":"2022-06-28T00:56:49.269Z","created":"2012-02-11T08:03:01.259Z","0.0.1":"2012-02-11T08:03:22.585Z","0.0.2":"2012-02-14T08:35:40.846Z","0.0.4":"2012-02-15T06:20:51.848Z","0.0.5":"2012-02-15T06:34:41.197Z","0.0.6":"2012-02-15T08:26:29.886Z","0.0.7":"2012-02-17T09:03:40.008Z","0.0.9":"2012-03-02T05:43:15.035Z","0.1.2":"2012-03-08T22:24:34.181Z","0.1.3":"2012-03-17T06:30:34.879Z","0.2.0":"2013-07-04T04:06:04.131Z","0.2.1":"2013-07-05T21:30:29.064Z","0.2.2":"2013-07-11T07:16:26.358Z"},"author":{"name":"Josh Perez","email":"josh@goatslacker.com","url":"http://www.goatslacker.com"},"repository":{"type":"git","url":"git://github.com/goatslacker/node-typedjs.git"}}