{"_id":"nodeletter","_rev":"29-d2c89efc5f24dd3491d71070b4ba118d","name":"nodeletter","description":"Nodeletter is a Node.js module that is used for creating email newsletters.","dist-tags":{"latest":"0.1.5"},"versions":{"0.0.1":{"name":"nodeletter","version":"0.0.1","description":"Nodeletter is a Node.js module that is used for creating newsletters.","preferGlobal":true,"main":"nodeletter.js","bin":{"nodeletter":"nodeletter.js"},"author":{"name":"Matthew Coleman"},"keywords":["email","newsletter"],"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"dependencies":{"kiwi":"0.2.1","inliner":"0.1.14","jquery":"1.8.3","markdown":"0.4.0","moment":"1.7.2","premailer-api":"1.0.1"},"engines":{"node":"*"},"scripts":{"start":"node server.js"},"readme":"nodeletter\n==========\n\nvr. 0.0.1\n\n**nodeletter** is a Node.js module that is used for creating email newsletters.\n\nIt has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design. Normally services like MailChimp, etc., are good\nroutes to go as one stop shops. But if you're stuck creating a solution from\nscratch to handle through some mailer service, that usually means you're in\nfor a lot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content\n- testing with numerous email browsers\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS\n- making sure all links are referencing valid external locations\n- having multiple copies of the same design for email/online display\n- entering content into source directly\n- updating context sensitive variables (dates, names, etc.)\n\n**nodeletter** attemps to solve at least some of these problems from the get go,\nparticularly the ones that involve the design, development, and generation of email \nnewsletters.  It should make newsletter development mare akin to common web development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen web developing.\n\n### Render Modes ###\n\nRender modes are instanced of behavior by which **nodeletter* will render an \nexisting email template. By default, the following are supplied (and are\noverrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the Kiwi templating engine.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within ghte `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like news items or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour rendering options.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  nodeletter new template_name\n\n2. Build your newsletter.\n\n3. Start the **nodeletter** server. \n\n  node template.js\n\n4. Use render modes for developing and testing your newsletter. \n   Render modes are displayed according to the specified path:\n\n  localhost:8888/render_mode/action\n\n  where:\n    - render_mode: type of render mode, default is `default`\n    - action: render action, default is `display`\n","readmeFilename":"README.md","_id":"nodeletter@0.0.1","dist":{"shasum":"ffc8c132ba57b87ef906a277d74f67b8245d2968","tarball":"https://registry.npmjs.org/nodeletter/-/nodeletter-0.0.1.tgz","integrity":"sha512-E4vyTNa4vyzb8P57eg3OahbTbWYpqVRnr7Ve6PWzwnIl6OIM2CnMuFBJCmLlrMUJsdXIiGs828oaaPJjCS2PoA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFnZkdjPIHo9i0W5TMA7qnrZ6q/gifPKWBR0Bltb5aUvAiBkaSsmeIAP5QBFk3mvLV9neSXIt0FXaNmw0hRL+RVffg=="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"spacez320","email":"logical.zero@gmail.com"},"maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}],"directories":{}},"0.1.1":{"name":"nodeletter","version":"0.1.1","description":"Nodeletter is a Node.js module that is used for creating email newsletters.","main":"nodeletter.js","bin":{"nodeletter":"nodeletter.js"},"author":{"name":"Matthew Coleman"},"keywords":["email","newsletter"],"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"dependencies":{"async":"0.2.3","kiwi":"0.2.1","inliner":"0.1.14","jquery":"1.8.3","markdown":"0.4.0","moment":"1.7.2","premailer-api":"1.0.1"},"engines":{"node":"*"},"scripts":{"start":"node server.js"},"readme":"nodeletter\n==========\n\nvr. 0.1.1\n\n**nodeletter** is a Node.js module that is used for creating email newsletters.\n\nIt was developed and has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- async\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design for email. Normally services like MailChimp, etc., are\ngood routes to go. But, if you're stuck creating a solution from scratch to\nhandle through some distribution service, that usually means you're in for a\nlot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content\n- testing with numerous email browsers\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS\n- making sure all links are referencing valid external locations\n- having multiple copies of the same design for email/online display\n- entering content into source directly\n- updating context sensitive variables (dates, names, etc.)\n- remembering to create a text version\n\n**nodeletter** attempts to solve at least some of these problems from the get\ngo, particularly the ones that involve the design, development, and generation\nof email newsletters.It should make newsletter development more akin to common\nweb development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen developing for the front-end interwebz. \n\n### Render Modes ###\n\nRender modes are instanced of behavior by which **nodeletter* will render an \nexisting email template. By default, the following are supplied (and are\noverrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the [Kiwi templating engine](https://github.com/coolony/kiwi),\nwhich is itself based on the now deprecated jQuery Templates.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within the `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like a list of \nnews items, events, or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour defined render modes.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  `nodeletter create template_name`\n\n  This uses the `nodeletter` project template to get you started.\n\n2. Configure things appropriately in the <template>.js file (like base path\n   and such).\n\n3. Get crackin' on your sweet newsletter (Kiwi template, generation logic, \n   styles, images, content, Hobbits, etc.).\n\n   If you want some markup to start with, I suggest taking a look at\n   [MailChimps excellent email newsletter templates](https://github.com/mailchimp/Email-Blueprints)\n\n4. Start the **nodeletter** server. \n\n  `node template.js`\n\n5. Define **render modes** for developing and testing your newsletter. \n   **Render modes** are displayed according to the specified path:\n\n  `localhost:8888/render_mode/action`\n\n  where:\n    - **render_mode**: type of render mode, default is `default`\n    - **action**: render action, default is `display`\n\nStatus\n------\n\nThis project is in its infancy but is being actively developed.\nLet me know you have any problems.\n\nLicense\n-------\n\n### MIT License\n\nCopyright (C) 2013 Matthew Coleman\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\nof the Software, and to permit persons to whom the Software is furnished to do\nso, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","readmeFilename":"README.md","_id":"nodeletter@0.1.1","dist":{"shasum":"20aab22c7e44afe7c29f2611f851ed2ed068bd6a","tarball":"https://registry.npmjs.org/nodeletter/-/nodeletter-0.1.1.tgz","integrity":"sha512-0NEILYtoSfTXYezU2b6pKDCTwX9gdW7KwYXvGXkXhnt32aBZ/0XMoza5imcjVafkXEPgLJp5XT+opZZM/cmesw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGXr8ISRoTYimBg3RLXpIuQb+3ezeHJZ2+TpGF8ASFr6AiEAh+LCNZidCye3gnfY13wmRWTCIeBoPrfMXZTJc6slIlQ="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"spacez320","email":"logical.zero@gmail.com"},"maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}],"directories":{}},"0.1.2":{"name":"nodeletter","version":"0.1.2","description":"Nodeletter is a Node.js module that is used for creating email newsletters.","main":"nodeletter.js","bin":{"nodeletter":"nodeletter.js"},"author":{"name":"Matthew Coleman"},"keywords":["email","newsletter"],"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"dependencies":{"async":"0.2.3","kiwi":"0.2.1","inliner":"0.1.14","jquery":"1.8.3","markdown":"0.4.0","moment":"1.7.2","premailer-api":"1.0.1"},"engines":{"node":"*"},"scripts":{"start":"node server.js"},"readme":"nodeletter\n==========\n\nvr. 0.1.2\n\n**nodeletter** is a Node.js module that can be used for creating email\nnewsletters.\n\nIt was developed and has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- async\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design for email. Normally services like MailChimp, etc., are\ngood routes to go for such efforts. But, if you're stuck creating a solution\nfrom scratch to handle through some distribution service, that usually means\nyou're in for a lot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content (grr)\n- testing with numerous email browsers (yuck)\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS (wut)\n- making sure all links are referencing valid external location (mmph)\n- having multiple copies of the same design for email/online display (hnngghh)\n- entering content into source directly (&@#$D!)\n- updating context sensitive variables (dates, names, etc.) (sigh)\n- remembering to create a text version (aw, crap)\n\n**nodeletter** attempts to solve at least some of these problems from the get\ngo, or at least make your life easier. A more over-arching goal is to make\nnewsletter development more akin to common web development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen developing for the front-end interwebz. \n\n### Render Modes ###\n\n*Render modes* refer to sets of behavior by which **nodeletter* will render an\nexisting email template. By default, the following *render modes* are supplied\n(and are overrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the [Kiwi templating engine](https://github.com/coolony/kiwi),\nwhich is itself based on jQuery Templates.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article, or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within the `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like a list of \nnews items, events, or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour defined render modes.\n\nEditions\n--------\n\nObviously you want to be able to create different editions (digest, volumes,\nversions, whatever) of your newsletter. Normally email newsletters are sent out\nonce a month, week, year, etc.\n\nTo handle this, content and static files are overrideable according to the path\nwhich you supply to the nodeletter url.  \n\nAs an example, say we release a newsletter monthly and I want to create a\nnewsletter for March, 2013.\n\n#### Content ####\n\n1. Create a folder structure under content: `/2013/03`\n2. Put your junk in that folder\n3. Get your browser to open the folder by visiting: `http://<url_to_nodeletter>/2013/03`\n4. And that's how you do it\n\nNote: **nodeletter** will *ONLY* look for content within the subdirectory you give it.\n\n#### Statics ####\n\n1. Create a folder structure under content (not static): `/2013/03/static`\n2. Put your junk in that folder\n3. Etc.\n\nNote: **nodeletter** will *OVERRIDE* static files it finds in the subdirectory, but also\nload static files from the main static directory.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  `nodeletter create template_name`\n\n  This uses the `nodeletter` project template to get you started.\n\n2. Configure things appropriately in the <template>.js file (like base path\n   and such).\n\n3. Get crackin' on your sweet newsletter (Kiwi template, generation logic, \n   styles, images, content, Hobbits, etc.).\n\n   If you want some markup to start with, I suggest taking a look at\n   [MailChimps excellent email newsletter templates](https://github.com/mailchimp/Email-Blueprints)\n\n4. Start the **nodeletter** server. \n\n  `node template.js`\n\n5. Define **render modes** for developing and testing your newsletter. \n   **Render modes** are displayed according to the specified path:\n\n  `localhost:8888/edition/path#render_mode`\n\n  where:\n    - **render_mode**: type of render mode, default is `default`\n\nStatus\n------\n\nThis project is in its infancy but is being actively developed.\nLet me know you have any problems.\n\nLicense\n-------\n\n### MIT License\n\nCopyright (C) 2013 Matthew Coleman\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\nof the Software, and to permit persons to whom the Software is furnished to do\nso, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","readmeFilename":"README.md","_id":"nodeletter@0.1.2","dist":{"shasum":"44b264a61db008954ed220156af08d1f19eda0a6","tarball":"https://registry.npmjs.org/nodeletter/-/nodeletter-0.1.2.tgz","integrity":"sha512-rykYf6ZRAET2OQbjiXcKo0Z47I0zSLwYWOm01TLG0RMXZD/MRnx2Zk+CZy5VWFcftYl+KTR8RI50R/Gt3VYsNg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNr0xRdm0PfEhEph0OdcbBb7ynFp48bJGp4pTco9FbsgIhAOggildpDRAWSbcISaxyIHGpKYTg3qrRMBpVyhn5hTvX"}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"spacez320","email":"logical.zero@gmail.com"},"maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}],"directories":{}},"0.1.3":{"name":"nodeletter","version":"0.1.3","description":"Nodeletter is a Node.js module that is used for creating email newsletters.","main":"nodeletter.js","bin":{"nodeletter":"nodeletter.js"},"author":{"name":"Matthew Coleman"},"keywords":["email","newsletter"],"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"dependencies":{"async":"0.2.3","kiwi":"0.2.1","inliner":"0.1.14","jquery":"1.8.3","markdown":"0.4.0","moment":"1.7.2","premailer-api":"1.0.1"},"engines":{"node":"*"},"scripts":{"start":"node server.js"},"readme":"nodeletter\n==========\n\nvr. 0.1.3\n\n**nodeletter** is a Node.js module that can be used for creating email\nnewsletters.\n\nIt was developed and has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- async\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design for email. Normally services like MailChimp, etc., are\ngood routes to go for such efforts. But, if you're stuck creating a solution\nfrom scratch to handle through some distribution service, that usually means\nyou're in for a lot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content (grr)\n- testing with numerous email browsers (yuck)\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS (wut)\n- making sure all links are referencing valid external location (mmph)\n- having multiple copies of the same design for email/online display (hnngghh)\n- entering content into source directly (&@#$D!)\n- updating context sensitive variables (dates, names, etc.) (sigh)\n- remembering to create a text version (aw, crap)\n\n**nodeletter** attempts to solve at least some of these problems from the get\ngo, or at least make your life easier. A more over-arching goal is to make\nnewsletter development more akin to common web development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen developing for the front-end interwebz. \n\n### Render Modes ###\n\n*Render modes* refer to sets of behavior by which **nodeletter* will render an\nexisting email template. By default, the following *render modes* are supplied\n(and are overrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the [Kiwi templating engine](https://github.com/coolony/kiwi),\nwhich is itself based on jQuery Templates.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article, or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within the `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like a list of \nnews items, events, or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour defined render modes.\n\nEditions\n--------\n\nObviously you want to be able to create different editions (digest, volumes,\nversions, whatever) of your newsletter. Normally email newsletters are sent out\nonce a month, week, year, etc.\n\nTo handle this, content and static files are overrideable according to the path\nwhich you supply to the nodeletter url.  \n\nAs an example, say we release a newsletter monthly and I want to create a\nnewsletter for March, 2013.\n\n#### Content ####\n\n1. Create a folder structure under content: `/2013/03`\n2. Put your junk in that folder\n3. Get your browser to open the folder by visiting: `http://<url_to_nodeletter>/2013/03`\n4. And that's how you do it\n\nNote: **nodeletter** will *ONLY* look for content within the subdirectory you give it.\n\n#### Statics ####\n\n1. Create a folder structure under content (not static): `/2013/03/static`\n2. Put your junk in that folder\n3. Etc.\n\nNote: **nodeletter** will *OVERRIDE* static files it finds in the subdirectory, but also\nload static files from the main static directory.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  `nodeletter create template_name`\n\n  This uses the `nodeletter` project template to get you started.\n\n2. Configure things appropriately in the <template>.js file (like base path\n   and such).\n\n3. Get crackin' on your sweet newsletter (Kiwi template, generation logic, \n   styles, images, content, Hobbits, etc.).\n\n   If you want some markup to start with, I suggest taking a look at\n   [MailChimps excellent email newsletter templates](https://github.com/mailchimp/Email-Blueprints)\n\n4. Start the **nodeletter** server. \n\n  `node template.js`\n\n5. Define **render modes** for developing and testing your newsletter. \n   **Render modes** are displayed according to the specified path:\n\n  `localhost:8888/edition/path#render_mode`\n\n  where:\n    - **render_mode**: type of render mode, default is `default`\n\nStatus\n------\n\nThis project is in its infancy but is being actively developed.\nLet me know you have any problems.\n\nLicense\n-------\n\n### MIT License\n\nCopyright (C) 2013 Matthew Coleman\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\nof the Software, and to permit persons to whom the Software is furnished to do\nso, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","readmeFilename":"README.md","_id":"nodeletter@0.1.3","dist":{"shasum":"2b20b31ae61d31913e184116d5851fd41271dba5","tarball":"https://registry.npmjs.org/nodeletter/-/nodeletter-0.1.3.tgz","integrity":"sha512-8EiiLS+mKNG9kFg5xVinGMq7F1Tu1KOzYkj5juOiHdus2gTAkROJU72ROur03fzNHN2dJG9SD500bXo3WdgU2g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBGsGts1W8R6FJp54424AU4mz9oW2WvWSdP+K7ALPkr4AiBnpnEHn0gjLCTFarBMuxM9NGlm4wo+JMbjD9Z9ksPlxg=="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"spacez320","email":"logical.zero@gmail.com"},"maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}],"directories":{}},"0.1.4":{"name":"nodeletter","version":"0.1.4","description":"Nodeletter is a Node.js module that is used for creating email newsletters.","main":"nodeletter.js","bin":{"nodeletter":"cli.js"},"author":{"name":"Matthew Coleman"},"keywords":["email","newsletter"],"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"dependencies":{"async":"0.2.3","kiwi":"0.2.1","inliner":"0.1.14","jquery":"1.8.3","markdown":"0.4.0","moment":"1.7.2","premailer-api":"1.0.1"},"engines":{"node":"*"},"scripts":{"start":"node server.js"},"readme":"nodeletter\n==========\n\nvr. 0.1.4\n\n**nodeletter** is a Node.js module that can be used for creating email\nnewsletters.\n\nIt was developed and has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- async\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design for email. Normally services like MailChimp, etc., are\ngood routes to go for such efforts. But, if you're stuck creating a solution\nfrom scratch to handle through some distribution service, that usually means\nyou're in for a lot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content (grr)\n- testing with numerous email browsers (yuck)\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS (wut)\n- making sure all links are referencing valid external location (mmph)\n- having multiple copies of the same design for email/online display (hnngghh)\n- entering content into source directly (&@#$D!)\n- updating context sensitive variables (dates, names, etc.) (sigh)\n- remembering to create a text version (aw, crap)\n\n**nodeletter** attempts to solve at least some of these problems from the get\ngo, or at least make your life easier. A more over-arching goal is to make\nnewsletter development more akin to common web development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen developing for the front-end interwebz. \n\n### Render Modes ###\n\n*Render modes* refer to sets of behavior by which **nodeletter* will render an\nexisting email template. By default, the following *render modes* are supplied\n(and are overrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the [Kiwi templating engine](https://github.com/coolony/kiwi),\nwhich is itself based on jQuery Templates.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article, or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within the `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like a list of \nnews items, events, or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour defined render modes.\n\nEditions\n--------\n\nObviously you want to be able to create different editions (digest, volumes,\nversions, whatever) of your newsletter. Normally email newsletters are sent out\nonce a month, week, year, etc.\n\nTo handle this, content and static files are overrideable according to the path\nwhich you supply to the nodeletter url.  \n\nAs an example, say we release a newsletter monthly and I want to create a\nnewsletter for March, 2013.\n\n#### Content ####\n\n1. Create a folder structure under content: `/2013/03`\n2. Put your junk in that folder\n3. Get your browser to open the folder by visiting: `http://<url_to_nodeletter>/2013/03`\n4. And that's how you do it\n\nNote: **nodeletter** will *ONLY* look for content within the subdirectory you give it.\n\n#### Statics ####\n\n1. Create a folder structure under content (not static): `/2013/03/static`\n2. Put your junk in that folder\n3. Etc.\n\nNote: **nodeletter** will *OVERRIDE* static files it finds in the subdirectory, but also\nload static files from the main static directory.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  `nodeletter create template_name`\n\n  This uses the `nodeletter` project template to get you started.\n\n2. Configure things appropriately in the <template>.js file (like base path\n   and such).\n\n3. Get crackin' on your sweet newsletter (Kiwi template, generation logic, \n   styles, images, content, Hobbits, etc.).\n\n   If you want some markup to start with, I suggest taking a look at\n   [MailChimps excellent email newsletter templates](https://github.com/mailchimp/Email-Blueprints)\n\n4. Start the **nodeletter** server. \n\n  `node template.js`\n\n5. Define **render modes** for developing and testing your newsletter. \n   **Render modes** are displayed according to the specified path:\n\n  `localhost:8888/edition/path#render_mode`\n\n  where:\n    - **render_mode**: type of render mode, default is `default`\n\nStatus\n------\n\nThis project is in its infancy but is being actively developed.\nLet me know you have any problems.\n\nLicense\n-------\n\n### MIT License\n\nCopyright (C) 2013 Matthew Coleman\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\nof the Software, and to permit persons to whom the Software is furnished to do\nso, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","readmeFilename":"README.md","_id":"nodeletter@0.1.4","dist":{"shasum":"48a47d384574bb836bfbc1beaf1fdd41b7a0dcc8","tarball":"https://registry.npmjs.org/nodeletter/-/nodeletter-0.1.4.tgz","integrity":"sha512-GUoLnbsbPcR0dRsmFYj3RuHTTL3I423454Wae3/VCmdSeKBQsxCwKaougOZiOZBucgJa1CXlTI3YNZv9wCK1Ng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAajabiacAAk6fMQl0hv7NBywmfaqYS/E5fzpquLyR5QAiBapGInb/Pv4UP9+frXLDVhjKfxUPRgF0MEH/ue00TZGA=="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"spacez320","email":"logical.zero@gmail.com"},"maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}]},"0.1.5":{"name":"nodeletter","version":"0.1.5","description":"Nodeletter is a Node.js module that is used for creating email newsletters.","main":"nodeletter.js","bin":{"nodeletter":"cli.js"},"author":{"name":"Matthew Coleman"},"keywords":["email","newsletter"],"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"dependencies":{"async":"0.2.3","kiwi":"0.2.1","inliner":"0.1.14","jquery":"1.8.3","markdown":"0.4.0","moment":"1.7.2","premailer-api":"1.0.1"},"engines":{"node":"*"},"scripts":{"start":"node server.js"},"readme":"nodeletter\n==========\n\nvr. 0.1.5\n\n**nodeletter** is a Node.js module that can be used for creating email\nnewsletters.\n\nIt was developed and has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- async\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design for email. Normally services like MailChimp, etc., are\ngood routes to go for such efforts. But, if you're stuck creating a solution\nfrom scratch to handle through some distribution service, that usually means\nyou're in for a lot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content (grr)\n- testing with numerous email browsers (yuck)\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS (wut)\n- making sure all links are referencing valid external location (mmph)\n- having multiple copies of the same design for email/online display (hnngghh)\n- entering content into source directly (&@#$D!)\n- updating context sensitive variables (dates, names, etc.) (sigh)\n- remembering to create a text version (aw, crap)\n\n**nodeletter** attempts to solve at least some of these problems from the get\ngo, or at least make your life easier. A more over-arching goal is to make\nnewsletter development more akin to common web development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen developing for the front-end interwebz. \n\n### Render Modes ###\n\n*Render modes* refer to sets of behavior by which **nodeletter* will render an\nexisting email template. By default, the following *render modes* are supplied\n(and are overrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the [Kiwi templating engine](https://github.com/coolony/kiwi),\nwhich is itself based on jQuery Templates.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article, or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within the `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like a list of \nnews items, events, or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour defined render modes.\n\nEditions\n--------\n\nObviously you want to be able to create different editions (digest, volumes,\nversions, whatever) of your newsletter. Normally email newsletters are sent out\nonce a month, week, year, etc.\n\nTo handle this, content and static files are overrideable according to the path\nwhich you supply to the nodeletter url.  \n\nAs an example, say we release a newsletter monthly and I want to create a\nnewsletter for March, 2013.\n\n#### Content ####\n\n1. Create a folder structure under content: `/2013/03`\n2. Put your junk in that folder\n3. Get your browser to open the folder by visiting: `http://<url_to_nodeletter>/2013/03`\n4. And that's how you do it\n\nNote: **nodeletter** will *ONLY* look for content within the subdirectory you give it.\n\n#### Statics ####\n\n1. Create a folder structure under content (not static): `/2013/03/static`\n2. Put your junk in that folder\n3. Etc.\n\nNote: **nodeletter** will *OVERRIDE* static files it finds in the subdirectory, but also\nload static files from the main static directory.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  `nodeletter create template_name`\n\n  This uses the `nodeletter` project template to get you started.\n\n2. Configure things appropriately in the <template>.js file (like base path\n   and such).\n\n3. Get crackin' on your sweet newsletter (Kiwi template, generation logic, \n   styles, images, content, Hobbits, etc.).\n\n   If you want some markup to start with, I suggest taking a look at\n   [MailChimps excellent email newsletter templates](https://github.com/mailchimp/Email-Blueprints)\n\n4. Start the **nodeletter** server. \n\n  `node template.js`\n\n5. Define **render modes** for developing and testing your newsletter. \n   **Render modes** are displayed according to the specified path:\n\n  `localhost:8888/edition/path?rm=<render_mode>`\n\n  where:\n    - **render_mode**: type of render mode, default is `default`\n\n6. If a render mode is set given the \"generate: true\" option, it will save\n   the produced output to the content path under '.gen'\n\nStatus\n------\n\nThis project is in its infancy but is being actively developed.\nLet me know you have any problems.\n\nLicense\n-------\n\n### MIT License\n\nCopyright (C) 2013 Matthew Coleman\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\nof the Software, and to permit persons to whom the Software is furnished to do\nso, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","readmeFilename":"README.md","_id":"nodeletter@0.1.5","dist":{"shasum":"8f77e5f2b7a2f4650cdda869cb9c6a9c59efd03c","tarball":"https://registry.npmjs.org/nodeletter/-/nodeletter-0.1.5.tgz","integrity":"sha512-XMYrH8IW+C7PMdT+DzNSyfNi6w26p3L3kQehHEW8wbhSuGaiJvTbrMqabn7QUaTlS0N6k8tX8oivoVbunFQ2jw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxvZAP0T4kYWaZDtq8wwazZEWOOYjVyxEblkDVtp+ONAIhAP/mm3h4zguCKYN9s3hQSZDXXVyEKS/KwzUhr4GUYn4Y"}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"spacez320","email":"logical.zero@gmail.com"},"maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}]}},"readme":"nodeletter\n==========\n\nvr. 0.0.1\n\n**nodeletter** is a Node.js module that is used for creating email newsletters.\n\nIt has been tested on Node.js vr. 0.8.18. \n\n**nodeletter** requires the following modules:\n\n- http\n- fs\n- path\n- url\n- moment\n- jquery\n- inliner\n- premailer\n- markdown\n- kiwi\n\nSynopsis\n--------\n\nThis Node module is intended for developers/designers tasked with creating a\nunique newsletter design. Normally services like MailChimp, etc., are good\nroutes to go as one stop shops. But if you're stuck creating a solution from\nscratch to handle through some mailer service, that usually means you're in\nfor a lot of trivial work, including:\n\n- using antiquated HTML/CSS strategies to lay out content\n- testing with numerous email browsers\n- embedding CSS inline as `style` attributes for MUA's that don't process\n  header or inline CSS\n- making sure all links are referencing valid external locations\n- having multiple copies of the same design for email/online display\n- entering content into source directly\n- updating context sensitive variables (dates, names, etc.)\n\n**nodeletter** attemps to solve at least some of these problems from the get go,\nparticularly the ones that involve the design, development, and generation of email \nnewsletters.  It should make newsletter development mare akin to common web development.\n\nProcess\n-------\n\n**nodeletter** separates newsletter creation into concerns you're used to \nwhen web developing.\n\n### Render Modes ###\n\nRender modes are instanced of behavior by which **nodeletter* will render an \nexisting email template. By default, the following are supplied (and are\noverrideable):\n\n- **email**: CSS is inlined, compiled into the DOM as `style` attributes, and\n  compressed, link references are made external\n- **online**: CSS is inlined, references are made external\n- **default**: the template is served with no intermediate processing\n\n### Template ###\n\n**nodeletter** newsletters are created using the Kiwi templating engine.\n\n### Content ###\n\nContent refers to what is featured in your newsletter, which is usually text like\nan article or whatever.\n\nContent is derived using `markdown.` Simply create a markdown file and include\nit in your template within ghte `./contents` folder.\n\n### Feeds ###\n\nFeeds are lists of items that a newsletter might use, like news items or links.\n\nFeeds are derived using `JSON` files that are imported from `./contents/feeds.json.`\n\n### Statics ###\n\nStatic files are your CSS, JS, and images. These are smartly handled depending on\nyour rendering options.\n\nUsage\n-----\n\n1. Build the directory structure using the `nodeletter` executable.\n\n  nodeletter new template_name\n\n2. Build your newsletter.\n\n3. Start the **nodeletter** server. \n\n  node template.js\n\n4. Use render modes for developing and testing your newsletter. \n   Render modes are displayed according to the specified path:\n\n  localhost:8888/render_mode/action\n\n  where:\n    - render_mode: type of render mode, default is `default`\n    - action: render action, default is `display`\n","maintainers":[{"name":"spacez320","email":"logical.zero@gmail.com"}],"time":{"modified":"2022-06-22T02:58:09.356Z","created":"2013-02-06T03:38:58.930Z","0.0.1":"2013-02-06T03:38:59.968Z","0.1.1":"2013-02-08T02:08:45.159Z","0.1.2":"2013-03-11T22:20:22.927Z","0.1.3":"2013-03-14T06:18:13.222Z","0.1.4":"2013-03-14T06:44:58.183Z","0.1.5":"2013-04-11T02:18:12.681Z"},"author":{"name":"Matthew Coleman"},"repository":{"type":"git","url":"git@github.com:spacez320/nodeletter.git"},"users":{"dsfriehe":true,"vicpal25":true}}