
Research
Security News
Malicious PyPI Package Exploits Deezer API for Coordinated Music Piracy
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
atomify-js
Advanced tools
Atomic JavaScript - Reusable front-end modules using Browserify, transforms, and templates
Atomic JavaScript - Reusable front-end modules using Browserify, transforms, and templates
atomify-js is a tool that makes it easy to create small, atomic modules of client-side code. It provides support for several templating libraries and Browserify transforms out of the box while allowing for ample customization. It also provides several convenience features to make working with Browserify even easier.
In its default form, atomify-js takes an opts
object and a callback
function.
opts.entry or opts.entries - Path or paths that will be provided to Browserify as entry points. For convenience, you may simply provide a string or array of strings in place of the opts
object, which will be treated as the entry
or entries
property, respectively. Paths will be resolved relative to process.cwd()
.
opts.debug - Passed to Browserify to generate source maps if true
. Also provides additional CLI output, if applicable.
opts.watch - If true
, watchify will be used to create a file watcher and speed up subsequent builds.
opts.transforms - Provide your own transforms that will be added to the defaults listed above.
opts.shim - If you are using browserify-shim 2.x, you can provide your shim config in this property. browserify-shim version 3 is configured using package.json
and should be used if possible.
opts.output - If you simply want your bundle written out to a file, provide the path in this property. Note that your callback
will NOT be called if this property is present. Path will be resolved relative to process.cwd()
.
You may also provide any valid browserify bundle options in the opts
object as well.
Standard Browserify bundle callback with cb(err, src)
signature. Not called if opts.output
is specifed. If callback
is provided as a string rather than function reference it will be used as the opts.output
file path.
// entry.js
var thing = require('thing')
, template = require('./template.html.hbs')
template({param: 'param'})
// build.js
var js = require('atomify-js')
var opts = {
entry: './entry.js'
, debug: true // default: `false`
}
js(opts, function (err, src) {
// do something with the src
})
OR
var js = require('atomify-js')
js('./entry.js', './bundle.js')
npm install atomify-js
FAQs
Atomic JavaScript - Reusable front-end modules using Browserify, transforms, and templates
We found that atomify-js demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers 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.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.
Security News
Newly introduced telemetry in devenv 1.4 sparked a backlash over privacy concerns, leading to the removal of its AI-powered feature after strong community pushback.