
Security News
Risky Biz Podcast: Making Reachability Analysis Work in Real-World Codebases
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
grunt-scarab
Advanced tools
Run a scarab app with static assets and live reload support.
This plugin requires Grunt ~0.4.0
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-scarab --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-scarab');
Run this task with the grunt scarab
command.
Type: String
Default: 'server'
This defines the directory containing the scarab app.
Type: String
Default: 'localhost'
This defines the host the server is binding to. Set to '0.0.0.0' if you want the server to be accessible from the network.
Type: Number
Default: 3000
This defines the port the server is binding to.
Type: Boolean|Number
Default: true
Enables live-reloading. When set to a number, it defines the port for the live reload server. This adds the live-reload script tag to html files (using connect-livereload
) and adds a /$reload
route that restarts the server. It can be triggered using the scarab:restart
task. More details below.
Type: Object
Serves the static files in one or more directories (Array of Strings) under a certain path (see examples below). Dynamic routes in scarab have precedence over static assets with the same name.
Type: Function
Allows to add additional middleware. The given function is called with the app as the first parameter.
scarab : {
options: {
server: 'server',
host: 'localhost',
port: 3000,
livereload: true
},
dev: {
options: {
mount: ['.tmp', 'app'],
middleware: function(app) {
app.use(app.middleware.cookieParser('secret'));
}
}
},
test: {
options: {
mount: {
'/': ['.tmp', 'test']
}
}
},
dist: {
options: {
mount: {
'/': ['dist']
}
}
}
},
This plugin just adds the script tag and offers a task for restarting the scarab server. For full live reload functionality, grunt-contrib-watch
is recommended.
watch: {
livereload: {
options: {
livereload: true
},
files: [
'app/*.html',
'app/styles/{,*/}*.css',
'{.tmp,app}/scripts/{,*/}*.js',
'app/images/{,*/}*.{png,jpg,jpeg,gif,webp,svg}'
]
},
scarabRestart: {
options: {
livereload: true
},
files: [
'server/**/*'
],
tasks: ['scarab:restart']
}
},
The files specified under livereload
make the browser reload the page, the files specified under scarabRestart
restart the server and reload the page.
FAQs
Grunt plugin for starting a scarab server with live reloading
The npm package grunt-scarab receives a total of 0 weekly downloads. As such, grunt-scarab popularity was classified as not popular.
We found that grunt-scarab 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
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.