adit alternatives and similar modules
Based on the "Miscellaneous" category.
Alternatively, view adit alternatives based on common mentions on social networks and blogs.
-
Electron
Build cross platform desktop apps with web technologies. (You might like awesome-electron) -
cheerio
Fast, flexible, and lean implementation of core jQuery designed specifically for the server. -
nan
A header file filled with macro and utility goodness for making add-on development for across Node.js versions easier. -
webworker-threads
Lightweight Web Worker API implementation with native threads. -
node-pre-gyp
Makes it easy to publish and install Node.js C++ addons from binaries. -
schemapack
Create a schema object to encode/decode your JSON in to a compact byte buffer with no overhead. -
stringify-object
Stringify an object/array like JSON.stringify just without all the double-quotes. -
node-video-lib
Pure JavaScript library for working with MP4 and FLV video files and creating MPEG-TS chunks for HLS streaming. -
resolve-from
Resolve the path of a module like require.resolve() but from a given path.
Scout APM - Leading-edge performance monitoring starting at $39/month
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of adit or a related project?
Popular Comparisons
README
Adit

Forward all your stuff through ssh tunnel.
There is a lot of examples out there how this could be useful, for example, check out "SSH Tunnel - Local and Remote Port Forwarding Explained With Examples"
Usage
ssh and Adit
$ ssh -L 9000:imgur.com:80 example.com
new Adit('9000:imgur.com:80 example.com'/*, password*/).forward().then(adit => {
console.log('success');
adit.close();
});
$ ssh -R 9000:localhost:3000 example.com
new Adit('9000:localhost:3000 example.com'/*, password*/).reverse().then(adit => {
console.log('success');
adit.close();
});
Listen for events
let server = new Adit(...);
server.on('ready', ...);
server.on('tcp connection', ...)
server.on('error', ...);
server.on('data', ...);
server.forward(...).then(...);
Thorough
import Adit from 'adit';
let adit = new Adit({
host: `example.com`
// Everything else is optional
// username: 'tester' // By default, `USER` environment variable will be used
// port: 22, // 22 By default
// Or port range -
// port: [22, 23], the first available port of the three will be used
// Also, see "Authentification strategy" below -
// "agent": "path",
// "password": "pass",
// "key": Buffer
});
// Or just
let adit = new Adit('example.com');
// `3` - is how many times we want to try to connect, before bailing out */
adit.open(3).then(connection => {
// At this point we established connection with remote server
// Forward all connections from **local** server to remote one
connection.out({
// from
host: 'example.com'
port: 80
}, {
// To
host: 'localhost'
port: 8080,
// Or port range -
// port: [25, 28], the first available port of the three will be used
}).then(() => {
// Forwarding is enabled
});
// Forward all connections from **remote** server to local one
connection.in({
// from
host: 'example.com'
port: 80,
// Or port range -
// port: [25, 28], the first available port of the three will be used
}, {
// To
host: 'localhost'
port: 8080
}).then(() => {
// Forwarding is enabled
});
}, error => {
console.error(error);
});
adit.on('error', () => {
// Report error
});
// Then, after awhile you would want to close it
adit.close();
Authentification strategy
- If
password
is defined - use it - If
agent
orkey
is defined explicitly - use one of them, prioritize theagent
- If
agent
orkey
is not passed - use environment varibles (SSH_AUTH_SOCK
foragent
)
Note: if key
is used, assume it is added without passphrase, otherwise you should use agent