Research
Security News
Threat Actor Exposes Playbook for Exploiting npm to Build Blockchain-Powered Botnets
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Require a folder of files or other folders, instead of doing them one at a time.
Note: This project is in development, and versioning is a little different. Read this for more details.
So let's say you are setting up a node project, and using the adapter pattern, which is a great and useful pattern. You may have a folder full of adapters, and you want to require all of them into an object, rather than going through each one individually. Kind of like require_tree in sprockets. That's exactly what indx does for you.
It's a very small script, but it's something I found myself writing and re-writing, so I figured why not wrap it up and give it to the world to make life a couple lines of code shorter.
npm install indx
In the folder you want to require, put an index.js
file at the root. Inside that file, write this:
module.exports = require('indx')(__dirname);
This you can require that folder and each of the files will be present. Alternately, just pass indx
the path of a directory you want to require:
var adapters = require('indx')('./adapters')
The path you pass will be passed through path.resolve, so no need to compute an absolute path if you don't need to. The example above will work fine without having to run any additional path
methods on it as long as the relative path there is correct.
Indx supports javascript and coffeescript. If you have folders inside your folder, make sure each of those folders has an index.js
or index.coffee
file in it, or it won't be required. If you have files in your folder that are not .js
or .coffee
, they will not be required. If there are other languages I'm not aware of you'd like to add support for, feel free to submit a pull request - it's easy to extend the supported extensions.
This entire project is one file, pretty easy to figure out how it's working. If you want to add something or fix a bug, please add a test for it. You can run tests with mocha
in the root of the project.
FAQs
require_tree for node
We found that indx 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.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Security News
NVD’s backlog surpasses 20,000 CVEs as analysis slows and NIST announces new system updates to address ongoing delays.
Security News
Research
A malicious npm package disguised as a WhatsApp client is exploiting authentication flows with a remote kill switch to exfiltrate data and destroy files.