{"_id":"@brainspore/shackuz","_rev":"4-69e5a4efe61e9edff931c40d41500ac1","name":"@brainspore/shackuz","dist-tags":{"latest":"1.4.1"},"versions":{"1.4.0":{"name":"@brainspore/shackuz","version":"1.4.0","keywords":["NODEJS","JAVASCRIPT","EXPRESSJS","EMAILING"],"author":{"name":"Paullaster Okoth"},"license":"MIT","_id":"@brainspore/shackuz@1.4.0","maintainers":[{"name":"paullaster","email":"paullasterokoth98@gmail.com"}],"homepage":"https://github.com/paullaster/Shackuz#readme","bugs":{"url":"https://github.com/paullaster/Shackuz/issues"},"dist":{"shasum":"6e09d2374aa1736da5fe03f0bcf44f942d14be5d","tarball":"https://registry.npmjs.org/@brainspore/shackuz/-/shackuz-1.4.0.tgz","fileCount":8,"integrity":"sha512-GrjvaL1GED6zvgicr4CX/TCoHawS35eC0B4QnmNsOxsDqPiizQOWIq9hwp0L1pzJ8yHzHL6dpnNbSNKiY3GBmw==","signatures":[{"sig":"MEUCIQDK0d1K97vPHJGi7zkpevDHSMe/NopolUqqZroTC9U0tQIgG3gIV6oKdocNqLeMSSW8c5jxcrIzDMogk/GrAjEaQAc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12692},"main":"dist/server.js","types":"dist/server.d.ts","engines":{"node":">=14"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js","require":"./dist/server.js"}},"gitHead":"b343554bd2c0fabff596938c8f63178ecda6a27c","scripts":{"test":"jest --runInBand --passWithNoTests","build":"tsc","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"paullaster","email":"paullasterokoth98@gmail.com"},"repository":{"url":"git+https://github.com/paullaster/Shackuz.git","type":"git"},"_npmVersion":"10.9.2","description":"Nodejs Email Templating Engine","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^22.15.3"},"_npmOperationalInternal":{"tmp":"tmp/shackuz_1.4.0_1746336065915_0.15193700425114298","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@brainspore/shackuz","version":"1.5.0","keywords":["NODEJS","JAVASCRIPT","EXPRESSJS","EMAILING"],"author":{"name":"Paullaster Okoth"},"license":"MIT","_id":"@brainspore/shackuz@1.5.0","maintainers":[{"name":"paullaster","email":"paullasterokoth98@gmail.com"}],"homepage":"https://github.com/paullaster/Shackuz#readme","bugs":{"url":"https://github.com/paullaster/Shackuz/issues"},"dist":{"shasum":"a9ea826388d9a73d5b08d81043bb54688a01ceb1","tarball":"https://registry.npmjs.org/@brainspore/shackuz/-/shackuz-1.5.0.tgz","fileCount":8,"integrity":"sha512-HT9ZvdHmIW+eJ5S5+aPcGZk7SyQv8q3bMt9uc5EowTNXM4IVw1KURrf5IR1kFdkLvUtgCH3Y8RRpnibNGwX5wg==","signatures":[{"sig":"MEUCIFimIhlvRG/9K2H4vzcL1lap62dRczQciTbKhVaHeYPVAiEAm9CiAdq8ocyQeDAPHIsMkamQTn7TtNQSGVflGMWGKhg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12692},"main":"dist/server.js","types":"dist/server.d.ts","engines":{"node":">=14"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js","require":"./dist/server.js"}},"gitHead":"a5c7cab2e36e8cdf03e17f788efd0e31a583fd40","scripts":{"test":"jest --runInBand --passWithNoTests","build":"tsc","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"paullaster","email":"paullasterokoth98@gmail.com"},"repository":{"url":"git+https://github.com/paullaster/Shackuz.git","type":"git"},"_npmVersion":"10.9.2","description":"Nodejs Email Templating Engine","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^22.15.3"},"_npmOperationalInternal":{"tmp":"tmp/shackuz_1.5.0_1746336975566_0.29823408288193654","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@brainspore/shackuz","version":"1.5.1","keywords":["NODEJS","JAVASCRIPT","EXPRESSJS","EMAILING"],"author":{"name":"Paullaster Okoth"},"license":"MIT","_id":"@brainspore/shackuz@1.5.1","maintainers":[{"name":"paullaster","email":"paullasterokoth98@gmail.com"}],"homepage":"https://github.com/paullaster/Shackuz#readme","bugs":{"url":"https://github.com/paullaster/Shackuz/issues"},"dist":{"shasum":"a04d485bde6610e0b16f2cbbea6e3afd2a43b944","tarball":"https://registry.npmjs.org/@brainspore/shackuz/-/shackuz-1.5.1.tgz","fileCount":8,"integrity":"sha512-WgaIHuOlX5SCd66Jlf5XVBTUGBhGWaMo78ZtvgeY6MYXje/Dvc9RQiZIj+pLBuzfD4moOmuID5EZBbf3nH8BVw==","signatures":[{"sig":"MEYCIQC5MRN5Y4/1lV8p0Kiy9kG97+RvFGqJm/PRoAsWhGHWywIhALjjv65ZmIRpBY86n40ESCXXCbXwK6IUMutH1F1dpxvf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12724},"main":"dist/server.js","types":"dist/server.d.ts","engines":{"node":">=14"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js","require":"./dist/server.js"}},"gitHead":"4805c7bdf77b3231fa556395cad81a8fbce10896","scripts":{"test":"jest --runInBand --passWithNoTests","build":"tsc","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"paullaster","email":"paullasterokoth98@gmail.com"},"repository":{"url":"git+https://github.com/paullaster/Shackuz.git","type":"git"},"_npmVersion":"10.9.2","description":"Nodejs Email Templating Engine","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^22.15.3"},"_npmOperationalInternal":{"tmp":"tmp/shackuz_1.5.1_1746338235993_0.117801231776963","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@brainspore/shackuz","version":"1.4.1","description":"Nodejs Email Templating Engine","main":"dist/server.js","types":"dist/server.d.ts","exports":{".":{"require":"./dist/server.js","import":"./dist/server.js","types":"./dist/server.d.ts"}},"scripts":{"build":"tsc && node scripts/esm-fix.js dist","prepare":"npm run build","prepublishOnly":"npm test","test":"jest --runInBand --passWithNoTests"},"repository":{"type":"git","url":"git+https://github.com/paullaster/Shackuz.git"},"keywords":["NODEJS","JAVASCRIPT","EXPRESSJS","EMAILING"],"author":{"name":"Paullaster Okoth"},"license":"MIT","bugs":{"url":"https://github.com/paullaster/Shackuz/issues"},"homepage":"https://github.com/paullaster/Shackuz#readme","devDependencies":{"@types/jest":"^29.5.14","@types/node":"^22.15.3","jest":"^29.7.0","ts-jest":"^29.3.2","typescript":"^5.0.0"},"engines":{"node":">=14"},"publishConfig":{"access":"public"},"_id":"@brainspore/shackuz@1.4.1","gitHead":"4435cd2d9bada7630a0c9d84a971c34b6c924d31","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-/MGv7Hxxr9LG0Tn3i4LHsSTYQhkapErwwlxr4pNeAXqzymL+fhrs7cI9HHUEqGQRExLk7be740Co3r1YxYG4Uw==","shasum":"207779acd2cf41f70068d765bbc95d058653c9a6","tarball":"https://registry.npmjs.org/@brainspore/shackuz/-/shackuz-1.4.1.tgz","fileCount":8,"unpackedSize":13254,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCa5KNeDP0Mhffc1rSkWtoDXwkr7OHRG9LMAGh5w414uwIgdX+4V/G2SBFBufXU6pP4NvT2zIiz4bs88Oz1ZNQO7rk="}]},"_npmUser":{"name":"paullaster","email":"paullasterokoth98@gmail.com"},"directories":{},"maintainers":[{"name":"paullaster","email":"paullasterokoth98@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/shackuz_1.4.1_1746842614585_0.27259791576487147"},"_hasShrinkwrap":false}},"time":{"created":"2025-05-04T05:21:05.816Z","modified":"2025-05-10T02:03:34.963Z","1.4.0":"2025-05-04T05:21:06.079Z","1.5.0":"2025-05-04T05:36:15.766Z","1.5.1":"2025-05-04T05:57:16.190Z","1.4.1":"2025-05-10T02:03:34.752Z"},"bugs":{"url":"https://github.com/paullaster/Shackuz/issues"},"author":{"name":"Paullaster Okoth"},"license":"MIT","homepage":"https://github.com/paullaster/Shackuz#readme","keywords":["NODEJS","JAVASCRIPT","EXPRESSJS","EMAILING"],"repository":{"type":"git","url":"git+https://github.com/paullaster/Shackuz.git"},"description":"Nodejs Email Templating Engine","maintainers":[{"name":"paullaster","email":"paullasterokoth98@gmail.com"}],"readme":"# @brainspore/shackuz\n\n## Overview\n\n`@brainspore/shackuz` is a modern TypeScript package for building robust, scalable, and maintainable email templates in JavaScript/TypeScript projects. It provides a flexible API for generating HTML email content with customizable blocks and themes.\n\n## Installation\n\n```bash\nnpm install @brainspore/shackuz\n# or\nyarn add @brainspore/shackuz\n```\n\n## Usage Example\n\n```typescript\nimport { EmailTemplateBuilder } from \"@brainspore/shackuz\";\n\n// Create a new email template builder instance\nconst email = new EmailTemplateBuilder({\n  appConfig: { title: \"Welcome Email\" }\n})\n  .addBlock(\"h\", \"Welcome to Shackuz!\")\n  .addBlock(\"p\", \"Hello {{name}},\\n\\nThank you for joining us.\")\n  .addBlock(\"d\")\n  .addBlock(\"p\", \"Regards\")\n  .addBlock(\"p\", \"Shackuz\")\n  .buildHTML();\n\nconsole.log(email);\n```\n\n## Test Script Example & How to Run\n\nA top-tier test suite is provided to ensure reliability. The main test file is located at:\n\n- `test/email-template-builder.test.ts`\n\nExample test (from the test suite):\n\n```typescript\nimport { EmailTemplateBuilder } from \"../server\";\n\ndescribe(\"EmailTemplateBuilder\", () => {\n  it(\"builds a simple email HTML with header and paragraph\", () => {\n    const builder = new EmailTemplateBuilder({\n      appConfig: { title: \"Test Email\" }\n    })\n      .addBlock(\"h\", \"Welcome!\")\n      .addBlock(\"p\", \"Hello user!\");\n    const html = builder.buildHTML();\n    expect(html).toContain(\"<h1\");\n    expect(html).toContain(\"Welcome!\");\n    expect(html).toContain(\"<p\");\n    expect(html).toContain(\"Hello user!\");\n    expect(html).toContain(\"Test Email\");\n  });\n});\n```\n\n### Running Tests\n\nTo run all tests, use:\n\n```bash\nnpm test\n```\n\n## Deployment\n\nThis package includes a deployment script (`deploy.sh`) for automated releases. See the Deployment section in this README for details.\n\n---\n\n## License\n\nMIT\n","readmeFilename":"README.md"}