New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

grasslands

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

grasslands

A grass wrapper with nodejs importer and an adapter between grass and sass-loader etc

latest
Source
npmnpm
Version
0.1.3
Version published
Maintainers
1
Created
Source

grasslands

https://github.com/lonelyhentxi/grasslands/actions Version GitHub License

A wrapper with nodejs import resolver and an adapter between grass and sass-loader? etc.

Performance grass is benchmarked against dart-sass and sassc (libsass) here. In general, grass appears to be ~2x faster than dart-sass and ~1.7x faster than sassc.

And In my tests, it is 5~10x faster than sass package.

Thanks to the efforts of the grass authors, this package compiles scss files much faster than the version of sass (dart-sass that compiled to js, wildly used version), and without some of the specific problems of dart-sass-embedded, such as memory leaks.

Attention

Since the current version of the origin grass has some bugs when dealing with empty argument lists for mixins and functions, and doesn't support custom importers, I'm using my own forked version of grass for now, and will switch the upstream of this package to the origin grass if it supports these capabilities in the future.

Usage

Install the package

npm install -D grasslands

Usage for sass-loader

// your other configs
{
  loader: 'sass-loader',
  options: {
    implementation: require.resolve('grasslands/lib/sass-loader-adapter'),
    sassOptions: {
      // to enable thread-loader when use old versions of sass-loader, pass a logger
      logger: {
        debug(message, _loggerOptions) {
          console.debug(message);
        },
        warn(message, _loggerOptions) {
          console.warn(message);
        },
      },
      includePaths: [
        path.resolve('your/include_paths1'),
        path.resolve('your/include_paths2')
      ],
      resolveAlias: {
        '@utils': ['src/utils']
      }
    },
  }
}
// your other configs

Currently not support sassOptions.importer/importers as it 2x ~ 4x slower.

Support

Operating Systems

node14node16node18
Windows x64
Windows arm64
macOS x64
macOS arm64
Linux x64 gnu
Linux x64 musl
Linux arm64 gnu
Linux arm64 musl
FreeBSD x64

Keywords

sass

FAQs

Package last updated on 19 Feb 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts