{"_id":"420kit-utils","name":"420kit-utils","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"420kit-utils","version":"1.0.0","description":"Shared utilities for 420kit projects - phrase system and media generation","main":"index.js","type":"module","exports":{".":"./index.js","./package.json":"./package.json"},"keywords":["phrase","media","generator","cms","content"],"author":{"name":"420kit"},"license":"MIT","_id":"420kit-utils@1.0.0","gitHead":"37ab34ae1d4a0e272651b7caa6a4264bd850014f","_nodeVersion":"23.10.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-OG/rWJ68DuTo/0Ce6s/nf6ObcOmNL6zhM4q3xvIC5Yil+qIRfGKfqx3XltBaBHiv2N0D4X6JYe+FcqcRoWeStQ==","shasum":"d40f735bf5b9171f96c068440ed8a1caadb1cf07","tarball":"https://registry.npmjs.org/420kit-utils/-/420kit-utils-1.0.0.tgz","fileCount":3,"unpackedSize":11301,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICjeMdbGYfVwhWwv3ftsUjRNb8w4eawwZNq3CPsAUc8EAiEAifLDjNgGAARyGtVXxawEVzYKow+WPaQEjX5S33BR+C4="}]},"_npmUser":{"name":"lanmower","email":"almagestfraternite@gmail.com"},"directories":{},"maintainers":[{"name":"lanmower","email":"almagestfraternite@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/420kit-utils_1.0.0_1760211874569_0.5389528657707388"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-11T19:44:34.568Z","1.0.0":"2025-10-11T19:44:34.743Z","modified":"2025-10-11T19:44:34.970Z"},"maintainers":[{"name":"lanmower","email":"almagestfraternite@gmail.com"}],"description":"Shared utilities for 420kit projects - phrase system and media generation","keywords":["phrase","media","generator","cms","content"],"author":{"name":"420kit"},"license":"MIT","readme":"# 420kit-shared\n\nShared utilities for 420kit projects providing phrase system and media generation functionality.\n\n## Installation\n\n```bash\nnpm install 420kit-shared\n```\n\n## Usage\n\n### BuildTimePhraseSystem\n\n```javascript\nimport { BuildTimePhraseSystem } from '420kit-shared';\n\nconst phraseSystem = new BuildTimePhraseSystem();\nconst selections = phraseSystem.getBuildSelections();\nconst phrase = phraseSystem.getPhrase('group', 'key', selections);\n```\n\n### DynamicPhraseSystem\n\n```javascript\nimport { DynamicPhraseSystem } from '420kit-shared';\n\nconst phraseSystem = new DynamicPhraseSystem();\nphraseSystem.addPhraseGroup('example', {\n  greeting: ['Hello', 'Hi', 'Hey']\n});\nconst randomGreeting = phraseSystem.getPhrase('example', 'greeting');\n```\n\n### MediaGenerator\n\n```javascript\nimport { MediaGenerator } from '420kit-shared';\n\nconst mediaGenerator = new MediaGenerator({\n  baseDir: process.cwd(),\n  imageDir: 'images',\n  videoDir: 'videos',\n  outputDir: process.cwd()\n});\n\nconst result = await mediaGenerator.generateAllLists();\n```\n\n## Classes\n\n- `BuildTimePhraseSystem` - Build-time phrase selection with seeded randomization\n- `DynamicPhraseSystem` - Runtime phrase management with random selection\n- `MediaGenerator` - Generate media lists for images and videos","readmeFilename":"README.md","_rev":"1-2bb9f59002d141a72e1ba51ee4b1c039"}