{"id":11989,"library":"seed-dash","title":"seed-dash - Sass Configuration Utilities","description":"seed-dash is a specialized utility pack designed for the Seed CSS framework, specifically addressing the manipulation of configuration variables within Sass, particularly for lists and maps. It implements a limited set of Underscore/lodash-like methods such as `_get`, `_set`, and `_extend` directly in Sass to facilitate dynamic configuration adjustments. Released at version 0.0.2, the project appears to be unmaintained, with its last known activity several years ago. The project's own documentation recommends `Sass Dash` for a more comprehensive Underscore/lodash-like experience in Sass, indicating that seed-dash is a niche or superseded solution for very specific Seed framework configuration tasks, rather than a general-purpose Sass utility library. It is designed to be integrated into a build pipeline, typically via Node.js tools like Gulp.","status":"abandoned","version":"0.0.2","language":"javascript","source_language":"en","source_url":"https://github.com/helpscout/seed-dash","tags":["javascript","bem","css","dash","design","functional","itcss","modular","oocss"],"install":[{"cmd":"npm install seed-dash","lang":"bash","label":"npm"},{"cmd":"yarn add seed-dash","lang":"bash","label":"yarn"},{"cmd":"pnpm add seed-dash","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"This package is CJS-only. `pack` resolves to an array of include paths for a Sass compiler, not an executable function or object.","wrong":"import pack from 'seed-dash';","symbol":"pack","correct":"const pack = require('seed-dash');"},{"note":"The Sass include path must be relative to the provided `includePaths` array and typically points to the main index file within the package's Sass directory.","wrong":"@import \"seed-dash\";","symbol":"Sass include","correct":"@import \"pack/seed-dash/_index\";"},{"note":"seed-dash exposes mixins and functions prefixed with `_` (e.g., `_get`, `_set`) to avoid naming collisions with native Sass functions. Do not use native Sass map functions if aiming for seed-dash's specific behavior.","wrong":"map-set($map, \"key\", \"value\");","symbol":"Sass function usage (example)","correct":"@include _set($map, \"key\", \"value\");"}],"quickstart":{"code":"const gulp = require('gulp');\nconst sass = require('gulp-sass')(require('sass')); // Using dart-sass\nconst pack = require('seed-dash');\nconst path = require('path');\n\ngulp.task('sass', function () {\n  return gulp.src('./sass/**/*.scss')\n    .pipe(sass({\n      includePaths: [\n        ...pack, // Includes seed-dash's own paths\n        path.join(__dirname, 'node_modules') // Ensure node_modules is also scanned\n      ]\n    }).on('error', sass.logError))\n    .pipe(gulp.dest('./css'));\n});\n\n// To run:\n// 1. Create a file `sass/main.scss`:\n//    `@import \"pack/seed-dash/_index\";\n//    $my-map: (\n//      'foo': 'bar',\n//      'nested': ('a': 1)\n//    );\n//    $my-map: _set($my-map, 'nested.b', 2);\n//    body { content: _get($my-map, 'nested.b'); }`\n// 2. Install dependencies: `npm install gulp gulp-sass sass seed-dash`\n// 3. Run: `npx gulp sass`","lang":"javascript","description":"This example demonstrates how to integrate `seed-dash` into a Gulp-based Sass compilation pipeline, allowing Sass files to import and use its utility functions for configuration."},"warnings":[{"fix":"Consider migrating to actively maintained Sass utility libraries like `Sass Dash` (github.com/davidkpiano/sassdash) which offers a more robust and complete feature set and is still maintained.","message":"The `seed-dash` package is explicitly unmaintained and has not received updates for several years. There are no guarantees of compatibility with modern Node.js versions, Sass compilers (e.g., Dart Sass), or contemporary build tooling. Expect potential breaking changes if integrating into a current ecosystem.","severity":"breaking","affected_versions":">=0.0.2"},{"fix":"Evaluate `Sass Dash` or other modern Sass utility libraries for new projects or refactoring existing ones that heavily rely on `seed-dash`'s specific behaviors.","message":"The official documentation for `seed-dash` itself recommends `Sass Dash` as a 'much more complete Underscore/lodash-like experience for Sass'. This indicates that `seed-dash` is considered superseded by a more actively developed alternative.","severity":"deprecated","affected_versions":">=0.0.2"},{"fix":"Remember that `seed-dash`'s core functionality resides within the compiled Sass. The Node.js part only exposes paths. All utility calls (e.g., `_get`, `_set`) must occur within your `.scss` files.","message":"The package primarily provides `includePaths` for Sass compilation, and its 'methods' are Sass mixins/functions prefixed with `_`. Developers might incorrectly expect a JavaScript utility or try to `require` and execute functions from the `pack` object.","severity":"gotcha","affected_versions":">=0.0.2"}],"env_vars":null,"last_verified":"2026-04-19T00:00:00.000Z","next_check":"2026-07-18T00:00:00.000Z","problems":[{"fix":"Ensure that `gulp-sass` (or your chosen Sass compiler) is provided with an `includePaths` array that includes the result of `require('seed-dash')`. Example: `includePaths: require('seed-dash')`.","cause":"The Sass compiler's `includePaths` were not correctly configured to point to the `node_modules/seed-dash/dist` directory.","error":"SassError: Can't find stylesheet to import.\n  @import \"pack/seed-dash/_index\";"},{"fix":"Update your `gulp-sass` initialization: `const sass = require('gulp-sass')(require('sass'));` to ensure it uses a compatible Sass compiler.","cause":"This often happens if `gulp-sass` is initialized incorrectly, especially with newer versions of `gulp-sass` that require you to explicitly pass the `sass` implementation (e.g., `require('sass')`).","error":"TypeError: Cannot read properties of undefined (reading 'on')\n    at Gulp.task (path/to/gulpfile.js:x:y)"},{"fix":"Use `sass` (Dart Sass) instead of `node-sass` for better Node.js version compatibility. If sticking with `node-sass`, ensure your Node.js version matches one supported by the specific `node-sass` version in your `node_modules`.","cause":"The project's `package.json` specifies `engines: {\"node\": \">=4\"}` which is extremely old. Modern `node-sass` versions (if still used) or `gulp-sass` might have compatibility issues with very old or very new Node.js runtimes.","error":"Error: Node Sass does not yet support your current Node.js version."}],"ecosystem":"npm"}