Nodevisor Docs
Packages

nodevisor

The umbrella package — one import for the entire Nodevisor platform.

Install

npm install nodevisor

nodevisor is the all-in-one package. It re-exports every module, type, and utility from the Nodevisor ecosystem so you can use a single import for everything.


Quick Start

import $, { OS, FS, Docker, DockerCluster, DockerNode, NodeWeb } from 'nodevisor';

// Run shell commands
const hostname = await $`hostname`.text();

// Use modules
const $server = $.connect({ host: '10.0.0.10', username: 'root' });
const arch = await $server(OS).arch();
const files = await $server(FS).readFile('/etc/hostname');

// Build clusters
const cluster = new DockerCluster({
  name: 'production',
  nodes: [new DockerNode({ host: '10.0.0.10' })],
});

cluster.addDependency(new NodeWeb({
  name: 'api',
  appDir: './apps/api',
  domains: ['api.example.com'],
  port: 3000,
}));

await cluster.deploy();

What's Included

Everything from these packages is available through nodevisor:

Default Export

The shell proxy $ from @nodevisor/shell — template literal command execution, .connect(), .as(), and the module system.

import $ from 'nodevisor';

await $`echo hello`.text();

System Modules

ExportPackageDescription
OS@nodevisor/osHostname, arch, uptime, reboot
FS@nodevisor/fsFile operations (read, write, chmod, etc.)
Env@nodevisor/envEnvironment variables
Packages@nodevisor/packagesPackage manager abstraction
Services@nodevisor/servicesSystemd service control
PWSH@nodevisor/pwshPowerShell command builder

Security Modules

ExportPackageDescription
Auth@nodevisor/authPassword management
Users@nodevisor/usersUser account management
Groups@nodevisor/groupsGroup management
AuthorizedKeys@nodevisor/authorized-keysSSH authorized keys
SSH@nodevisor/sshSSH server management
UFW@nodevisor/ufwFirewall management

Orchestration

ExportPackageDescription
Docker@nodevisor/dockerDocker engine, Swarm, Compose, Stack
Cluster@nodevisor/clusterAbstract cluster primitives
Builder@nodevisor/builderImage builder interface
Registry@nodevisor/registryContainer registry interface
AWS@nodevisor/awsAWS CLI and ECR

Pre-built Services

All Docker services from @nodevisor/docker:

import {
  Traefik, Postgres, Redis,
  NodeWeb, Nextjs, WireGuard, Whoami,
  DockerBuilder, NodeBuilder,
  DockerRegistry, DockerRegistryLocal,
  DockerCluster, DockerNode, DockerSwarm,
} from 'nodevisor';

Types and Utilities

Endpoint presets, Protocol enum, Zod schemas, and all TypeScript types:

import { endpoints, Protocol, adminSchema, runnerSchema } from 'nodevisor';

When to Use This Package

Use nodevisor when you want convenience — one dependency, one import source, everything available.

// One import, everything you need
import $, { Docker, UFW, Users, SSH } from 'nodevisor';

Use individual packages when you want smaller bundles or only need specific functionality:

// Only install what you use
import $ from '@nodevisor/shell';
import Docker from '@nodevisor/docker';

On this page