{"bugs":{"url":"https://github.com/millermedeiros/amd-utils/issues/"},"dist":{"shasum":"edc5608691ed913798bdfbc15c1e7b13e444217f","tarball":"https://registry.npmjs.org/amd-utils/-/amd-utils-0.2.0.tgz","integrity":"sha512-ff4uhUfSGJ2C4cjALeZnFOoNaEvgQHoaSl8wTzH3lQ+5w6XEFlCX1aSWCzSkHw1uZ5z2PcTLxDGEe+x/yKXmNA==","signatures":[{"sig":"MEQCIGPfhdCONO6hDoTRyeiVGARjbdvglHcc+aan6UUy5YJ2AiAze+ifhif5r4Xjl3D7z/KGhHa2Rp/KbgFiMI5nI932aw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./pkg/index.js","name":"amd-utils","author":{"url":"http://blog.millermedeiros.com","name":"Miller Medeiros"},"readme":"# amd-utils #\n\nhttp://millermedeiros.github.com/amd-utils\n\nmodular JavaScript utilities written in the\n[AMD](https://github.com/amdjs/amdjs-api/wiki/AMD) format.\n\nAll code is library agnostic and consist mostly of helper methods that aren't\ndirectly related with the DOM, the purpose of this library isn't to replace\nDojo, jQuery, YUI, Mootools, etc, but to provide modular solutions for common\nproblems that aren't solved by most of them.\n\n\n\n## Main goals ##\n\n - increase code reuse;\n - be clear (code should be clean/readable);\n - be easy to debug;\n - be easy to maintain;\n - follow best practices;\n - follow standards when possible;\n - **don't convert JavaScript into another language!**\n - be compatible with other frameworks;\n - be modular;\n - have unit tests for all modules.\n\n\n\n## What shouldn't be here ##\n\n - UI components;\n - CSS selector engine;\n - Event system - pub/sub;\n - Template engine;\n - Anything that could be a separate library and/or isn't a modular utility...\n\n\n\n## Important ##\n\nSince each function is a separate module they have independent version numbers.\n\nSince code is very modular (broken into multiple files) it is really important\nthat you run an optimizer before deploying the code to a server, otherwise you\nmay end up having too many file requests which can [degrade load-time\nperformance](http://developer.yahoo.com/performance/rules.html#num_http) a lot.\nSee [RequireJS optimization](http://requirejs.org/docs/optimization.html) for\nmore info.\n\n\n\n## Contributing ##\n\nFork the project on Github: https://github.com/millermedeiros/amd-utils\n\n > \"Write clearly, don't be too clever\" - The Elements of Programming Style\n\nAvoid unnamed functions and follow the other modules structure. By only using\nnamed functions it will be easier to extract the code from the AMD module if\nneeded and it will also give better error messages, JavaScript minifiers like\n[Google Closure Compiler](http://code.google.com/closure/compiler/) and\n[UglifyJS](https://github.com/mishoo/UglifyJS) will make sure code is as\nsmall/optimized as possible.\n\n > \"Make it clear before you make it faster.\" - The Elements of Programming Style\n\nBe sure to always create tests for each proposed module. Features will only be\nmerged if they contain proper tests and documentation.\n\n > \"Good code is its own best documentation.\" - Steve McConnell\n\nWe should do a code review before merging to make sure names makes sense and\nimplementation is as good as possible.\n\nCheck the [contributors list at github](https://github.com/millermedeiros/amd-utils/contributors).\n\n\n\n## Why AMD? ##\n\n**Because AMD is awesome!** Read these links if you still can't see why:\n\n - [Why AMD?](http://requirejs.org/docs/whyamd.html)\n - [AMD is better for the web than CJS modules](blog.millermedeiros.com/2011/09/amd-is-better-for-the-web-than-commonjs-modules/)\n - [AMD & CommonJS modules](http://briancavalier.com/presentations/pgh-js-amd-10-2011/)\n - [AMD vs. CJS](http://unscriptable.com/index.php/2011/09/30/amd-versus-cjs-whats-the-best-format/)\n\nYour mileage may vary...\n\n\n\n## License ##\n\nReleased under the [MIT License](http://www.opensource.org/licenses/mit-license.php).\n\n\n\n## Node.js ##\n\nAMD-utils also works on [node.js](http://nodejs.org), just run:\n\n   npm install amd-utils\n\nIt will download amd-utils from the NPM repository and convert the AMD modules\ninto a node.js compatible module.\n\n    var utils = require('amd-utils');\n    console.log( utils.math.clamp(100, 0, 50) ); // 50\n\n\n\n## Building The Documentation ##\n\nThe documentation is generated based on markdown files inside the\n`doc/mdown` folder using [mdoc](https://github.com/millermedeiros/mdoc).\nTo compile the docs run:\n\n    npm install .\n    node build\n\nIt will replace all the files inside the `doc/html` folder and update packages\nand specs runners, this way we avoid human mistakes.\n\nDocumentation files should be always up-to-date since modules are only\ncommitted to the `master` branch after they get proper tests and documentation.\n\nOnline documentation can be found at http://millermedeiros.github.com/amd-utils\n","scripts":{"install":"node ./_build/convert.js"},"homepage":"http://millermedeiros.github.com/amd-utils/","keywords":["utilities","functional"],"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"}],"repository":{"url":"git://github.com/millermedeiros/amd-utils.git","type":"git"},"description":"Utility methods written in the AMD format","directories":{"doc":"./doc/mdown","lib":"./pkg"},"maintainers":[{"name":"millermedeiros","email":"miller@millermedeiros.com"}],"dependencies":{"wrench":"~1.3.9","amdefine":">= 0.0.2"},"devDependencies":{"mdoc":"~0.3.2","handlebars":"~1.0.6"},"_id":"amd-utils@0.2.0","version":"0.2.0"}