{"_id":"packages","_rev":"28-a88e145b0d989ccebc65c71de41988ab","name":"packages","dist-tags":{"latest":"0.0.8"},"versions":{"0.0.1":{"name":"packages","version":"0.0.1","author":"","license":"BSD","_id":"packages@0.0.1","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"dist":{"shasum":"bf6446189ca6468d5607d294961ec00be84d0be3","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.1.tgz","integrity":"sha512-DEcadqysNltyoppbfmLKEojlLVD6svRbk+Ep1yE62+XLx9JpnnAWfVsIqg4vAGRHvDP+st3d1SjylmsOqHHDAQ==","signatures":[{"sig":"MEYCIQDBKB7EpQoPrfGB6iMUVMfc6PHTAzlTSyeCAuGKwoNY5AIhAPwGFWHT/mvAKI+OF2cTp93e7YuLYOJNTWzBK/WBzsNx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.2.18","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.2","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.2":{"name":"packages","version":"0.0.2","author":"","license":"BSD","_id":"packages@0.0.2","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"dist":{"shasum":"af7a7f27f30eaffcb32da34633e4738fcf948a61","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.2.tgz","integrity":"sha512-uOWT7julMHyabRKl25YppwCJkE0OWXlbeL/yHwiv+U3g57vU08SZlCgIpCl6y/hXVtoGeGXU0dGgXtQjMafx1w==","signatures":[{"sig":"MEQCICqWX7kuxfiKaVc4IQQJ3aVmnnG2omCr1R6EcAt0FxJ9AiBp57uzLF3JaFMVICKYmRsUDx7FrYh86IEKKb/ZDqYAMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.2.18","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.3":{"name":"packages","version":"0.0.3","author":"","license":"BSD","_id":"packages@0.0.3","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"dist":{"shasum":"8b55a86399121df8bb4e9b6d7da71561c51e0abe","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.3.tgz","integrity":"sha512-bnxWCQ34iQ2Jaj7MROz1yD82IPj6dgunJoFCiN2Aj8nZlgDmP3RIDB4PBfJANx3qQ0G63joLAClbesZGnF5/dw==","signatures":[{"sig":"MEYCIQDJ+l5O9FCiIA0l6lGwqwHx5F+UYovdixdNcpdxWRgFFwIhAMQKYrh/kqABbsNpB91m5vNoRoJoW645mBQLUhwSCDw+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.2.18","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.4":{"name":"packages","version":"0.0.4","author":"","license":"BSD","_id":"packages@0.0.4","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"dist":{"shasum":"1d30ed3626560e4b78d5856349a5bf8284e3e128","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.4.tgz","integrity":"sha512-R7VcquNSahLmXsvCqZJTK4jkg9wy1Ra8dWIU9GjZIgkQM3bSV9A61Ny4CpNZSxQdoOJQNfFEeQwFKkuLMjfzFQ==","signatures":[{"sig":"MEYCIQDsa+3vvdjrzx+4R17rctWPjAxpRhYaLSFR8xvc9RXQAQIhAML3UN6Gg3Sp8cmLblVBfbKw+Bfagqw3QivxEBpAz3pV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.2.18","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.5":{"name":"packages","version":"0.0.5","author":"","license":"BSD","_id":"packages@0.0.5","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"bugs":{"url":"https://github.com/classdojo/node-packages/issues"},"dist":{"shasum":"3516dad57f1acebba059fdd73fb123013792efdd","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.5.tgz","integrity":"sha512-cXr/u/ihTUkIywUSQuZCAfcTA71bOCq/AM/fjgEwFLnx4lzj8lbxGbrUZSwoxIjdYh/MJepX/MO+tS/5ahKABw==","signatures":[{"sig":"MEQCIGrehTr8RGJDblTlKpBGYi/ileOZwy3gLwMADz8LqEzUAiADUPpiLGb2Q4rkLMwlzfCSpw5t8JaI+R7izT/izkblDQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.3.11","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.6":{"name":"packages","version":"0.0.6","author":"","license":"BSD","_id":"packages@0.0.6","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"homepage":"https://github.com/classdojo/node-packages","bugs":{"url":"https://github.com/classdojo/node-packages/issues"},"dist":{"shasum":"d63e782d118a8ac2db8a5e9ba73fbff9819f475f","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.6.tgz","integrity":"sha512-n6fQMkhPe7f78via0Lgp9yYohXhZ/Rcw+NKyq+vkneTobMAxVKdLSNvIt1BypqhPyFCotEsUbDb6M4bCaCLazw==","signatures":[{"sig":"MEUCIFb0Qw6FRItADRIedOCGUtatH3jI9h+IcMxYRwbIsLhUAiEA3lv/isx/a9rH02UzJ+b6lr/YXHT39qTMl0OUHWiymgI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","_shasum":"d63e782d118a8ac2db8a5e9ba73fbff9819f475f","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.4.24","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.7":{"name":"packages","version":"0.0.7","author":"","license":"BSD","_id":"packages@0.0.7","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"homepage":"https://github.com/classdojo/node-packages","bugs":{"url":"https://github.com/classdojo/node-packages/issues"},"dist":{"shasum":"2e43a7cd7e4f3aa5e6ddaec3804ee338dedaab47","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.7.tgz","integrity":"sha512-RkQYaKBfET9jpETa4SGt3ILd7uOq2RsEybkhtlrBlhNCqSkzbh0uEqSswdZ8KDYkwF53SnOOTx6zCL+trGX8TQ==","signatures":[{"sig":"MEUCIHVCVNXOz6qQuj2d9o2ewTv3JJfmWdlg2iyRu76B889wAiEAn9ErUDMc/Ax2S6QricgXN90wtd/C1P73lX0hol08UBM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","_shasum":"2e43a7cd7e4f3aa5e6ddaec3804ee338dedaab47","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.4.24","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}},"0.0.8":{"name":"packages","version":"0.0.8","author":"","license":"BSD","_id":"packages@0.0.8","maintainers":[{"name":"architectd","email":"craig.j.condon@gmail.com"}],"homepage":"https://github.com/classdojo/node-packages","bugs":{"url":"https://github.com/classdojo/node-packages/issues"},"dist":{"shasum":"f32d0cd71d49e47bed486614cd1969e2745732c8","tarball":"https://registry.npmjs.org/packages/-/packages-0.0.8.tgz","integrity":"sha512-rstHZWH1UyHUAwtU8GI4JSIFWTYUEkRf+MseFG/p3lO/HgZHvXGZR7XN+1eA/Km7JDnItW4mgn5zfpP23aITgQ==","signatures":[{"sig":"MEQCICmO0UTUr0D3SRKHs5KaLI2ExBmv3tnVLVxpCLXWT0TNAiBpCeVVqfric0DtyRJ2F5o89q9xvOqZEw/onUUsLQM55A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","_from":".","_shasum":"f32d0cd71d49e47bed486614cd1969e2745732c8","gitHead":"30ee8f86a15b03af880c91450350aad3c95d9830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"architectd","email":"craig.j.condon@gmail.com"},"repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"_npmVersion":"1.4.24","description":"node-packages is [require.js](http://requirejs.org/) for node.js.","directories":{},"dependencies":{"express":"~3.4.0","toarray":"0.0.1","resolver":"~0.1.11","factories":"0.0.x","type-component":"0.0.1"},"devDependencies":{"express":"~3.4.0"}}},"time":{"created":"2013-09-14T22:26:44.323Z","modified":"2026-02-11T15:43:21.568Z","0.0.1":"2013-09-14T22:26:44.873Z","0.0.2":"2013-09-14T22:39:03.772Z","0.0.3":"2013-09-14T22:45:12.600Z","0.0.4":"2013-10-18T23:45:54.664Z","0.0.5":"2014-02-06T02:44:22.741Z","0.0.6":"2014-09-10T22:45:21.675Z","0.0.7":"2014-09-10T22:55:26.990Z","0.0.8":"2014-09-10T23:01:37.696Z"},"bugs":{"url":"https://github.com/classdojo/node-packages/issues"},"license":"BSD","homepage":"https://github.com/classdojo/node-packages","repository":{"url":"git://github.com/classdojo/node-packages.git","type":"git"},"description":"node-packages is [require.js](http://requirejs.org/) for node.js.","maintainers":[{"name":"marcacyr2","email":"marcacyr+npm@gmail.com"}],"readme":"node-packages is [require.js](http://requirejs.org/) for node.js.\n\n### Motification\n\n- Flattens & simplifies application structure. \n- Better encapsulation.\n- More consistent.\n\n### Example\n\n```\n- package.json - application package\n- lib/ - javascript source files\n  - index.js - main entry point\n    - packages/ - application components\n      - config/ - application config component\n      - http.server/ - http server component\n        - index.js   - package entry point\n      - http.routes/ - http routes\n        - index.js   \n```\n\nIn `lib/index.js`, you'll need something like:\n\n```javascript\nvar packages = require(\"packages\");\n\npackages.\nrequire(__dirname + \"/packages\").\nload();\n```\n\nIn `http.server/index.js`, you might have something like:\n\n```javascript\nexports.require = [\"express\", \"config\"];\nexports.load = function (express, config) {\n  var app = express()\n  app.listen(config.get(\"port\"));\n  return app;\n};\n```\n\nIn `http.routes/index.js`, you might have something like:\n\n```javascript\nexports.require = [\"http.server\"];\nexports.load = function (app) {\n  app.get(\"/hello\", function (req, res) {\n    res.send(\"Hello World!\");\n  });\n};\n```\n\n### Packages API\n\n#### packages packages()\n\nInitializes new packages loader\n\n#### packages.add(name, package)\n\nAdds a package. Below's an example where this might be useful.\n\n`lib/index.js`:\n\n```javascript\nvar packages = require(\"packages\");\n\nmodule.exports = function (config) {\n  packages.\n  add(\"config\", config).\n  require(__dirname + \"/packages\").\n  load();\n}\n```\n\n`lib/packages/http.server/index.js`:\n\n```javascript\nexports.require = [\"config\"];\nexports.load = function(config) {\n  //init server\n}\n```\n\n#### packages.require(path[, path])\n\nloads packages from a directory\n\n#### packages.load()\n\nloads all the packages \n\n#### packages.exports\n\nall the loaded packages\n\n### Package API\n\n\n```javascript\nexports.require = [ \"package.name\", [\"multiple.packages.*\"], /package.to.match/ ];\nexports.load    = function (singlePackage, multiplePackages, anotherSinglePackage, optionalSyncNext) {\n  \n};\n```\n\n","readmeFilename":"README.md","users":{"sledqqs":true}}