{"_id":"@aoikarasu/distme","name":"@aoikarasu/distme","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@aoikarasu/distme","version":"0.1.0","description":"Distribution utilities for frontend projects","main":"lib/index.js","bin":{"distme":"bin/distme.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["build","distribution","frontend","css","js","concatenation"],"author":{"name":"Aoi Karasu","email":"aoikarasu@gmail.com"},"license":"MIT","dependencies":{"clean-css":"^5.3.2","concat":"^1.0.3","mkdirp":"^3.0.1","uglify-js":"^3.17.4","yargs":"^17.7.2"},"peerDependencies":{"rimraf":"^5.0.5"},"gitHead":"75743c739bd77f2cafb05d4b98f4c38f68baae43","_id":"@aoikarasu/distme@0.1.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-zS+mqTzc3rYrfXIrCliVQJ3Xq5WPA90VbBg7aEKW3ys7Pij6z+K9Pzl8ycd8oALEOwGjbeCmvfR7fPT4e8+VMw==","shasum":"8af14750bf1813377666622c4aa3735a743e0ab5","tarball":"https://registry.npmjs.org/@aoikarasu/distme/-/distme-0.1.0.tgz","fileCount":9,"unpackedSize":15054,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCKOPOyClqT8SAtUCxFNYGV4Hz9SNAS+uu1mY1H0sDK7wIgJ8wO7SC4yH1j+y+M/vqX+oGwlczm8xQhAgJR9vZHZ+E="}]},"_npmUser":{"name":"aoikarasu","email":"aoikarasu@gmail.com"},"directories":{},"maintainers":[{"name":"aoikarasu","email":"aoikarasu@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/distme_0.1.0_1745579133638_0.13639957803233682"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-25T11:05:33.540Z","0.1.0":"2025-04-25T11:05:33.817Z","modified":"2025-04-25T11:05:34.090Z"},"maintainers":[{"name":"aoikarasu","email":"aoikarasu@gmail.com"}],"description":"Distribution utilities for frontend projects","keywords":["build","distribution","frontend","css","js","concatenation"],"author":{"name":"Aoi Karasu","email":"aoikarasu@gmail.com"},"license":"MIT","readme":"# @aoikarasu/distme\r\n\r\nA utility package for building and distributing frontend projects. Not the best one, but at least mine.\r\n\r\nThe purpose of this tool is to concat and minify all styles and scripts into single-file bundles, and post process the `index.html` file to replace `.css` and `.js` file references with `.min.css` and `.min.js`. It uses [clean-css] and [uglify-js] to get the job done.\r\n\r\n## Contents\r\n\r\n* [Installation](#installation)\r\n* [Usage](#usage)\r\n  * [Command Line Interface](#command-line-interface)\r\n  * [API Usage](#api-usage)\r\n* [Configuration](#configuration)\r\n* [AOI](#aoi)\r\n* [License](#license)\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @aoikarasu/distme --save-dev\r\n```\r\n\r\n## Usage\r\n\r\n### Command Line Interface\r\n\r\nYou can use the CLI commands to run the various build utilities:\r\n\r\n```bash\r\n# Concatenate and minify CSS files\r\ndistme css\r\n\r\n# Concatenate and minify JavaScript files\r\ndistme js\r\n\r\n# Run post-distribution tasks\r\ndistme pd\r\n```\r\n\r\n### API Usage\r\n\r\nYou can also use the package programmatically in your Node.js scripts:\r\n\r\n```javascript\r\nconst { concatCss, concatJs, postDist } = require('@aoikarasu/distme');\r\n\r\n// Concatenate CSS files with custom options\r\nconcatCss({\r\n  srcDir: 'src/styles',\r\n  destDir: 'dist/styles',\r\n  outputFile: 'bundle.min.css'\r\n});\r\n\r\n// Concatenate JavaScript files with custom options\r\nconcatJs({\r\n  files: [\r\n    'src/js/vendor/jquery.js',\r\n    'src/js/main.js',\r\n    'src/js/app.js'\r\n  ],\r\n  destDir: 'dist/js',\r\n  outputFile: 'bundle.min.js'\r\n});\r\n\r\n// Run post-distribution tasks\r\npostDist({\r\n  updateVersion: true,\r\n  addTimestamp: true\r\n});\r\n```\r\n\r\n## Configuration\r\n\r\nEach utility function accepts a configuration object with the following options:\r\n\r\n### concatCss Options\r\n\r\n| Option | Type | Default | Description |\r\n|--------|------|---------|-------------|\r\n| srcDir | _string_ | 'src/css' | Source directory for CSS files |\r\n| destDir | _string_ | 'dist/css' | Destination directory |\r\n| tempFile | _string_ | 'styles.temp.css' | Temporary concatenated file name |\r\n| outputFile | _string_ | 'styles.min.css' | Final minified file name |\r\n| files | _Array<string>_ | null | Specific files to concatenate (if not provided, will use all CSS files) |\r\n\r\n### concatJs Options\r\n\r\n| Option | Type | Default | Description |\r\n|--------|------|---------|-------------|\r\n| srcDir | _string_ | 'src/js' | Source directory for JS files |\r\n| destDir | str_ing | 'dist/js' | Destination directory |\r\n| tempFile | _string_ | 'main.temp.js' | Temporary concatenated file name |\r\n| outputFile | _string_ | 'main.min.js' | Final minified file name |\r\n| files | _Array<string>_ | null | Specific files to concatenate (if not provided, will use all JS files) |\r\n\r\n### postDist Options\r\n\r\n| Option | Type | Default | Description |\r\n|--------|------|---------|-------------|\r\n| distDir | _string_ | 'dist' | Distribution directory |\r\n| updateVersion | _boolean_ | true | Whether to update version in HTML |\r\n| addTimestamp | _boolean_ | true | Whether to add build timestamp |\r\n\r\n## AOI\r\n\r\nAoi (青い) means blue in japanese. In Japanese, 青 is used to describe blue things, such as 青い空 (blue sky)、青い海 (blue ocean). Aoi (青い) can also be translated to “fresh” or “newly grown”, such as vegetation which can have a blueish green color at times. It can also be referred to as an adjective to describe someone who is “inexperienced” or “fresh to the Industry.”  However, keep in mind あおい isn’t loosely interchangeable with みどり. [^1]\r\n\r\n[^1]: bit.ly/aoi-blue\r\n\r\n## License\r\n\r\n[MIT][license] © [Aoi Karasu][author]\r\n\r\n[aoi]: #aoi\r\n\r\n[author]: https://aoikarasu.github.io/\r\n\r\n[clean-css]: https://www.npmjs.com/package/clean-css\r\n\r\n[distme]: https://github.com/aoikarasu/distme\r\n\r\n[license]: license\r\n\r\n[uglify-js]: https://www.npmjs.com/package/uglify-js\r\n","readmeFilename":"README.md","_rev":"1-1d41b76b2f88ff4d7a8b85573fbed81a"}