{"_id":"universal","_rev":"39-47b4a3f264a40558c6e89606512bcfe4","name":"universal","description":"UMD grunt-init template","dist-tags":{"latest":"0.1.1","0.0.3":"0.0.3","0.0.4":"0.0.4"},"versions":{"0.0.0":{"name":"universal","description":"universal module template","version":"0.0.0","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","boilerplate","template"],"main":"./index.js","repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"aok":"~1.5.2","grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.4","grunt-contrib-concat":"~0.3.0","grunt-contrib-jshint":"~0.6.4"},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.0.0","dist":{"shasum":"1ab4261ec8706aa0b5b6b8c7209d0e06958c4bb1","tarball":"https://registry.npmjs.org/universal/-/universal-0.0.0.tgz","integrity":"sha512-OTorki4dJRe/qUVVlXqh7d/02i16PmiQukp1P11yWqP6GMaEf7JhELvWbdbZh+ieFyN6RhxauByiYXfjrnLNpg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICeGqeAzNcF4VAvHrXC/Z1M8KVoFnJeMHHeSPFZW9mJNAiEAsaFz694SESlAfIkIZOaVaLDDgVDwz4pZNfFDx8R6e7M="}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.0.1":{"name":"universal","description":"universal module template","version":"0.0.1","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","boilerplate","template"],"main":"./index.js","repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"aok":"~1.5.2","grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.4","grunt-contrib-concat":"~0.3.0","grunt-contrib-jshint":"~0.6.4"},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.0.1","dist":{"shasum":"d1e58e1c775ad59bcced82ad7cde58b91da37395","tarball":"https://registry.npmjs.org/universal/-/universal-0.0.1.tgz","integrity":"sha512-3rCuWPWR0yOaQyrGTLKVXfpBxtg6+BmvmeQk0V/PeUauJydUKrHSTOs+29aRLRsYiWBH4Nc8iUkuB2HLrqueDQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG6pcZkyTlnlNji14tj2uXnatbgcdJmkEywFX4D1kyKbAiBm5q9rjS03tgdTsJZwoIAylWUCANAhbsmzte0Yq68Raw=="}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.0.2":{"name":"universal","description":"universal module template","version":"0.0.2","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","boilerplate"],"main":"./index.js","repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"aok":"~1.8.0","grunt":"~0.4.2","grunt-contrib-uglify":"~0.3.0","grunt-contrib-concat":"~0.3.0","grunt-contrib-jshint":"~0.8.0"},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.0.2","dist":{"shasum":"13de57343a1f071af82f8a500dc6a742a056cdd0","tarball":"https://registry.npmjs.org/universal/-/universal-0.0.2.tgz","integrity":"sha512-qSXe2U/SqERSjfwtLcqEaUOBbAh3ESrAWsXgUcNVIS8yRj1StzKdKawXmWskYnPKdOB6COlVItYlFxKj75B/og==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFyBgpSBCC2IDecSRrOXYfWtJiliH5KzeCwl6UkusksAAiBulcB2BdI5HMasVYxB29Hxqbm9UaBAbO1OjembL5ZbYA=="}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.0.3":{"name":"universal","description":"universal module template","version":"0.0.3","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","boilerplate"],"main":"./index.js","repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"aok":"~1.8.0","grunt":"~0.4.2","grunt-contrib-uglify":"~0.3.0","grunt-contrib-concat":"~0.3.0","grunt-contrib-jshint":"~0.8.0"},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.0.3","dist":{"shasum":"294fbe2e8ce68c0e66ba3e5183b5c4e78804b00f","tarball":"https://registry.npmjs.org/universal/-/universal-0.0.3.tgz","integrity":"sha512-6HhqVb6jXklBMnDfavQzOrMa6rbtvNXu1c0l8aLMR1hK+Grdj1IV60Oeq2hfLWIaEj+5Y7OifMJylvEU3kj1UQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID+A1YcFeziL7kKtUVI8S52XLE/InZyeJ2bimKqY6rraAiBp7w1Ccj7+zVdWbFN+buHShM7yTMZHeKxl54LkExdt+Q=="}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.0.4":{"name":"universal","description":"universal module boilerplate","version":"0.0.4","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","boilerplate"],"main":"./index.js","repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"aok":"~1.8.1","grunt":"~0.4.4","grunt-contrib-uglify":"~0.4.0","grunt-contrib-concat":"~0.3.0","grunt-contrib-jshint":"~0.8.0"},"jshintConfig":{"boss":true,"browser":true,"debug":true,"devel":true,"eqnull":true,"evil":true,"expr":true,"globals":{"define":true,"ender":true},"jquery":true,"latedef":"nofunc","laxcomma":true,"maxerr":10,"node":true,"sub":true,"supernew":true,"undef":true,"unused":true},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.0.4","dist":{"shasum":"ac3ea4bb80ea35db0da2a06e7174d693b9c34b88","tarball":"https://registry.npmjs.org/universal/-/universal-0.0.4.tgz","integrity":"sha512-l4A7OPKt7ZI9XXHj4soPyMVtlDzcYfRSivGaceehuMmunLXtqUTkEDbPCA9lWGxT/GnwBy7/kqycq3Te7WPHRA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID+NyAAIGbPYn8VArDpmfVkCNb4N2uIoQGeiGdPfjTwEAiEAj2wZeyKBt9tZocWpFwj0HWiHILA3ucOdneWuNTpNG1g="}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.0.5":{"name":"universal","description":"universal module boilerplate","version":"0.0.5","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","boilerplate"],"main":"./index.js","repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"aok":"~1.8.1","grunt":"~0.4.4","grunt-contrib-uglify":"~0.4.0","grunt-contrib-concat":"~0.3.0","grunt-contrib-jshint":"~0.8.0"},"jshintConfig":{"boss":true,"browser":true,"debug":true,"devel":true,"eqnull":true,"evil":true,"expr":true,"globals":{"define":true,"ender":true},"jquery":true,"latedef":"nofunc","laxcomma":true,"maxerr":10,"node":true,"sub":true,"supernew":true,"undef":true,"unused":true},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.0.5","dist":{"shasum":"6dd4a8bb28ab88e94fa61daabeabc46c3817dfbe","tarball":"https://registry.npmjs.org/universal/-/universal-0.0.5.tgz","integrity":"sha512-Xfj+/OPoHCXHp1Ft4/LPgjDaBq/pxFBCzzUYMnVzzVQpREbtm7eHrQt8aJUgqyWvpEyFYKWfTi7mSGM5D3LBug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsp5XKpjNCoEH8pqeqkgVrM/9VdtaVAAXyakpmKO7qswIhALil9ojj5REXH9t6IcvaHazj360qOQ+7LwxHtt2BvZZu"}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.1.0":{"name":"universal","description":"UMD grunt-init template","version":"0.1.0","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","template","boilerplate"],"repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"grunt-contrib-jshint":"~0.9.0"},"jshintConfig":{"boss":true,"debug":true,"devel":true,"eqnull":true,"expr":true,"globals":{"define":true},"latedef":"nofunc","laxcomma":true,"maxcomplexity":15,"maxerr":10,"maxlen":115,"maxparams":4,"node":true,"sub":true,"supernew":true,"trailing":true,"undef":true,"unused":true},"bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.1.0","dist":{"shasum":"61115ceb83f86928323a209206b825063e9a2e75","tarball":"https://registry.npmjs.org/universal/-/universal-0.1.0.tgz","integrity":"sha512-K+doU9QGC7t6LtqKuu4S8jM2jiPonFDkOyP7zw+wlAzynVeFwARY1rMd9rCIgnwb91YK4g7D8RLWyCn4qYUqWg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEPAj77xYwV84HEDJGlORQgCZZviiU23nh947oIIHRejAiEAuurGWn/KZvbmSe31IHAnkqQwmhgD6Ipz+MbYAIxjT1U="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}]},"0.1.1":{"name":"universal","description":"UMD grunt-init template","version":"0.1.1","homepage":"https://github.com/ryanve/universal","license":"MIT","author":{"name":"Ryan Van Etten"},"keywords":["umd","template","boilerplate"],"repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"devDependencies":{"grunt-contrib-jshint":"~0.9.0"},"jshintConfig":{"boss":true,"debug":true,"devel":true,"eqnull":true,"expr":true,"globals":{"define":true},"latedef":"nofunc","laxcomma":true,"maxcomplexity":15,"maxerr":10,"maxlen":115,"maxparams":4,"node":true,"sub":true,"supernew":true,"trailing":true,"undef":true,"unused":true},"gitHead":"993a0f69182940822fd53975472a26464d81da08","bugs":{"url":"https://github.com/ryanve/universal/issues"},"_id":"universal@0.1.1","scripts":{},"_shasum":"5a2fcf9db6eace8598c305b4c785094b8e72a11f","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"ryanve","email":"ryanve@gmail.com"},"maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}],"dist":{"shasum":"5a2fcf9db6eace8598c305b4c785094b8e72a11f","tarball":"https://registry.npmjs.org/universal/-/universal-0.1.1.tgz","integrity":"sha512-62YQgSRVLdtAzsWz4KqEU6HH3ByOEOiNSyOar9z0ApHR8WUHiFh08+jT0N0HHAHcwJgRn6XbD4ay3Am1m3zchw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCV5MAFzaIkhdG30S7DYfys6jHxrW6WHlBxSonU1iCW0wIgJgdH3SHLXhO5LcMQndQapqFej49iVHMWIRAvracUiZM="}]}}},"readme":"# universal\r\n#### [`grunt-init`](https://github.com/gruntjs/grunt-init) template for making a universal JavaScript module\r\n\r\n## Features\r\n- <a name=\"umd\"></a><b>U</b>niversal <b>M</b>odule <b>D</b>efinition: [src/](root/src) uses a [UMD boilerplate](root/src/index.js) that works in CommonJS, [AMD](https://github.com/amdjs/amdjs-api/wiki/AMD), and/or browsers. [UMD patterns](https://github.com/umdjs/umd) make code work in multiple contexts and with various build tools.\r\n- <a name=\"grunt\"></a><b>grunt</b>: The included [universal GruntFile](root/GruntFile.js) uses [these grunt plugins](root/package.json#L15-L20) to perform [common tasks](#grunt-tasks).\r\n- <a name=\"aok\"></a><b>aok</b>: [test/](root/test) contains a boilerplate for writing tests with [aok](https://github.com/ryanve/aok) or another test framework.\r\n\r\n## Usage\r\n\r\nYou'll need to have installed [git](http://git-scm.com/downloads), [node.js](http://nodejs.org/download/) (including npm), and [grunt-cli](http://gruntjs.com/getting-started) on your machine.\r\n\r\n#### [Install `grunt-init` and the template](http://gruntjs.com/project-scaffolding)\r\n\r\n```sh\r\n$ npm install -g grunt-init\r\n$ git clone https://github.com/ryanve/universal.git .grunt-init/universal\r\n```\r\n\r\n#### Setup a new project via the template\r\n\r\n```sh\r\n$ mkdir example # or clone a repo\r\n$ cd example\r\n$ grunt-init universal\r\n```\r\n\r\n#### Install [devDependencies](root/package.json#L15-L20) and then run [grunt tasks](#grunt)\r\n\r\n```sh\r\n$ npm install # install dependencies listed in local package.json\r\n```\r\n\r\n#### [grunt tasks](root/GruntFile.js#L58-L60)\r\n\r\nBuilds for distribution are created in the package root via `grunt` based on the [package.json](root/package.json#L10) [`.main`](https://www.npmjs.org/doc/json.html#main) field.\r\n\r\n```sh\r\n$ grunt jshint:all # jshint all applicable files\r\n$ grunt jshint:sub # jshint in all sub dirs\r\n$ grunt test # run tests\r\n$ grunt build # generate a build in the package root named by .main in package.json\r\n$ grunt # run the \"default\" task\r\n```\r\n\r\n## Resources\r\n- [<b>jshint</b> options](http://www.jshint.com/docs/options)\r\n- [<b>package.json</b> documentation](https://www.npmjs.org/doc/json.html)\r\n- [<b>semver</b>.org](http://semver.org)\r\n- example modules: [energy](https://github.com/ryanve/energy), [fm](https://github.com/ryanve/fm), [actual](https://github.com/ryanve/actual), [lap](https://github.com/ryanve/lap), [vibe](https://github.com/ryanve/vibe)\r\n- [Ask questions or report issues](../../issues)\r\n\r\n## License\r\nMIT","maintainers":[{"name":"ryanve","email":"ryanve@gmail.com"}],"time":{"modified":"2022-06-28T04:55:53.543Z","created":"2013-10-31T05:57:16.490Z","0.0.0":"2013-10-31T05:57:18.861Z","0.0.1":"2013-11-21T05:42:08.410Z","0.0.2":"2014-02-27T09:19:44.911Z","0.0.3":"2014-03-17T18:00:15.748Z","0.0.4":"2014-03-17T19:38:37.935Z","0.0.5":"2014-03-20T02:17:18.996Z","0.1.0":"2014-04-06T18:31:18.329Z","0.1.1":"2015-08-24T04:11:37.565Z"},"author":{"name":"Ryan Van Etten"},"repository":{"type":"git","url":"https://github.com/ryanve/universal.git"},"homepage":"https://github.com/ryanve/universal","keywords":["umd","template","boilerplate"],"bugs":{"url":"https://github.com/ryanve/universal/issues"},"license":"MIT","readmeFilename":"README.md"}