Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
generator-dojo
Advanced tools
A Dojo application generator for Yeoman.
npm install -g yo generator-dojo
mkdir my-app && cd $_
yo dojo
, optionally passing an application name (the application name and AMD package will default to the directory you are currently in):yo dojo [app-name]
generator-dojo
will scaffold out a Dojo application using best practices for web development. This means the directory structure for development will be in the same structure as it would be after building for production:
src/
dojo/
dijit/
dgrid/
...
my-app/
index.html
Because of this structure, a Dojo application is completely agnostic to the server which delivers it in both development and production environments and requires little to no configuration of the server. It will work equally as well with nginx as it would with Apache Tomcat.
Sets up a new Dojo application, generating all of the boilerplate to get started. The application generator also optionally installs Dijit, DojoX, dgrid, and Stylus.
Example:
yo dojo
Generates a unit or functional test for https://theintern.io and places it in src/<appname>/tests/<test name>.{js,html}
. Optionally receives a --functional
flag. If the flag is passed, a functional test is generated, otherwise a unit test is generated.
Example:
yo dojo:test --functional widgets/functional/MyWidget
Produces src/<appname>/tests/widgets/functional/MyWidget.js
and src/<appname>/tests/widgets/functional/MyWidget.html
.
Example:
yo dojo:test widgets/MyWidget
Produces src/<appname>/tests/widgets/MyWidget.js
.
The default Gruntfile.js
defines some common tasks for your Dojo application:
Compiles and watches for changes to changes in stylus files, compiling them if necessary.
Compiles your application into the dist
directory using the Dojo build tool. The dist
directory can then be copied, zipped, tarred, warred, etc. to a production server without the need for complex configuration of the server: it's just a directory of static files!
Serves up the src
directory as the root directory of localhost:8888
(this can be configured using the connect.options.port
option in Gruntfile.js
). This also watches for changes to stylus files, compiling them if necessary.
server
also takes an optional target
flag. If this flag is dist
, a build will run and the dist
directory will be served as the root directory of localhost:8888
:
grunt server:dist
Runs unit and functional tests using https://theintern.io. Intern allows web developers to run unit and functional tests in various versions of browsers from the command line.
This task takes an optional target
flag. If this flag is local
, only local non-browser tests will be run. If this flag is remote
, only remote tests will be run using Selenium (via SauceLabs or your own Selenium server). If this flag is not passed, both non-browser and remote tests will be run.
Removes the dist
directory (if one exists) to clean up after a build.
FAQs
A generator for Yeoman
We found that generator-dojo 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
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.