Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/localnerve/grunt-html-snapshots
Grunt task for html-snapshots
https://github.com/localnerve/grunt-html-snapshots
grunt-task html-snapshots
Last synced: 23 days ago
JSON representation
Grunt task for html-snapshots
- Host: GitHub
- URL: https://github.com/localnerve/grunt-html-snapshots
- Owner: localnerve
- License: mit
- Created: 2013-05-16T21:52:37.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-04-11T02:59:56.000Z (9 months ago)
- Last Synced: 2024-04-13T07:46:29.098Z (8 months ago)
- Topics: grunt-task, html-snapshots
- Language: HTML
- Size: 972 KB
- Stars: 16
- Watchers: 4
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# grunt-html-snapshots
[![npm version](https://badge.fury.io/js/grunt-html-snapshots.svg)](http://badge.fury.io/js/grunt-html-snapshots)
![Verify](https://github.com/localnerve/grunt-html-snapshots/workflows/Verify/badge.svg)> The grunt task for [html-snapshots](http://github.com/localnerve/html-snapshots)
## Getting Started
This plugin requires Grunt `>=1.0.0`
*To use an older Grunt, use this library at tag `#v1.0.2`*If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
```shell
npm install grunt-html-snapshots --save-dev
```Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
```js
grunt.loadNpmTasks('grunt-html-snapshots');
```## The "html_snapshots" task
### Overview
This is a simple grunt task that uses the [html-snapshots](http://github.com/localnerve/html-snapshots) library. In your project's Gruntfile, add a section named `html_snapshots` to the data object passed into `grunt.initConfig()`.```js
grunt.initConfig({
html_snapshots: {
options: {
// Task-specific options go here.
},
your_target: {
options: {
// Target-specific options go here.
}
},
},
})
```### Options
#### options.force
Type: `boolean`
Default value: `false`A boolean value that is used to force the Gruntfile to continue, even if this task fails.
#### MORE
For details of task and target specific options, read the options section of [html-snapshots](http://github.com/localnerve/html-snapshots)### Usage Examples
#### Default Options and Targets
In this example, the default options are used to specify that the output directory should always be cleaned prior to taking snapshots, that a local robots.txt file should be used, and the html should be served from localhost. On all pages except the home page, when the selector "#dynamic-content" appears in the output, the page is ready for a snapshot. On the home page, we only take the snapshot when the selector "#home-content" is visible in the output.```js
grunt.initConfig({
html_snapshots: {
// options for all targets
options: {
source: "/path/to/local/robots.txt",
hostname: "localhost",
selector: { "__default": "#dynamic-content", "/": "#home-content" },
outputDirClean: "true",
},
// the debug target
debug: {
options: {
outputDir: "./snapshots/debug"
}
},
// the release target
release: {
options: {
outputDir: "./snapshots/release"
}
}
}
});grunt.loadNpmTasks('grunt-html-snapshots');
grunt.registerTask('debug', ['html_snapshots:debug']);
grunt.registerTask('release', ['html_snapshots:release']);
```Many more options are available. For details and examples of using the html-snapshots options, visit [html-snapshots](http://github.com/localnerve/html-snapshots).
## Contributing
In lieu of a formal style guide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).## License
[MIT License](LICENSE.md)