Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
grunt-datauri-variables
Advanced tools
Generates .scss datauri variables for .{png,gif,jpg} and .svg
Generates .scss datauri variables for .{png,gif,jpg} and .svg
Taking small images and inlining base64 encoded versions of them in your stylesheets to avoid additional HTTP requests. This also allows you to eliminate image sprites from your workflow. We generate .scss variables so that users have the most flexible ability to integrate these base64 encoded images into their workflow; this also guarantees we won't unnecessarily bloat style sheets because .scss variables are not included in output .css
by default.
If you need a very small task with limited dependencies this task is for you. If you want more robust options you may want to check out grunticon.
This plugin requires Grunt ~1.4.1
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-datauri-variables --save
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-datauri-variables');
In your project's Gruntfile, add a section named datauri
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
datauri: {
options: {
varPrefix: '', // defaults to `data-image-`
varSuffix: '', // defaults to empty string
colors: { // a color mapping object that will map
// files named with the following scheme
// `truck.colors-red-green.svg` into separate datauri vars.
red: '#00ffff',
green: '#ff00ff'
}
},
your_target: {
files: {
"generated/_datauri_variables.scss": "images/**/*.{png,jpg,gif,svg}"
}
},
},
})
Given the configuration in the Overview section above, you can expect grunt datauri
to output the following to generated/_datauri_variables.scss
(lines truncated for brevity).
cat generated/_datauri_variables.scss
$data-image-alert: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...";
$data-image-blurry: "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA...";
$data-image-circle: "data:image/gif;base64,R0lGODlhCwALAPEAAAAAA...";
$data-image-truck: "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj...";
$data-image-truck-red: "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj...";
$data-image-truck-green: "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj...";
Type: string
Default value: data-image-
A prefix prepended to the .scss variable name for the image.
Type: string
Default value: ''
A suffix appended to the .scss variable name for the image.
Type: object
Default value: undefined
A map of color names and values to be used to auto generate color variants for flagged .svg files.
Type: string
Default value: false
When set, variables will be placed in to a Sass map named by its value.
npm install
grunt spec
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
MIT
FAQs
Generates .scss datauri variables for .{png,gif,jpg} and .svg
The npm package grunt-datauri-variables receives a total of 82 weekly downloads. As such, grunt-datauri-variables popularity was classified as not popular.
We found that grunt-datauri-variables demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.