npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@cloudiva.net/cli

v0.9.0

Published

Cloudiva Cli for PaaS Services

Readme

diva

Deploy and manage your Cloudiva services from the terminal.

Version Downloads/week oclif

Quick start

  # 1. Install
  npm install -g @cloudiva.net/cli

  # 2. Sign in (or use an API token: diva login -t <token>)
  diva login

  # 3. See what you have
  diva service list

  # 4. Deploy the project in the current directory
  cd my-project
  diva deploy

To deploy the same project repeatedly without picking the service each time, add a diva.json to its root:

{
  "service": "my-app"
}

Then diva deploy alone is enough.

Files are excluded from the upload using .divaignore, falling back to .dockerignore and then .gitignore. Run with DIVA_DEBUG=true to see exactly what was skipped.

Usage

$ npm install -g @cloudiva.net/cli
$ diva COMMAND
running command...
$ diva (--version|-v)
@cloudiva.net/cli/0.9.0 darwin-arm64 node-v20.13.1
$ diva --help [COMMAND]
USAGE
  $ diva COMMAND
...

Environment variables

| Variable | Description | | --- | --- | | DIVA_DEBUG | Set to true to print full error details (status code, endpoint, error code, response body) and ignored-file logs during deploy. | | DIVA_API_URL | Override the API base URL. Defaults to https://apihub.cloudiva.net/fa/api/v1/. | | DIVA_INSECURE_TLS | Set to true to skip TLS certificate verification. Only for servers with a self-signed certificate — it disables protection against interception, so the CLI warns whenever it is active. | | DIVA_NO_UPDATE_CHECK | Set to any value to disable the "new version available" check entirely. Also honours NO_UPDATE_NOTIFIER, and it is skipped automatically when CI is set. | | DIVA_NPM_REGISTRY | npm registry used for the update check. Defaults to https://registry.npmjs.org. | | http_proxy / https_proxy | Route requests through an HTTP proxy. |

Credentials are stored in ~/.diva.json with 0600 permissions (readable only by you).

The update check is designed to stay out of your way: it contacts the registry at most once every 24 hours, gives up after 1.5 seconds, writes its notice to stderr so it never pollutes piped output, and stays silent on any failure. If you are offline it costs one 1.5s timeout, and nothing at all on subsequent runs.

Commands

diva account info

show information about the active account

USAGE
  $ diva account info [-h]

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  show information about the active account

EXAMPLES
  Show the active account's details

    $ diva account info

See code: src/commands/account/info.ts

diva account list

list the accounts you are logged in to

USAGE
  $ diva account list [-h]

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  list the accounts you are logged in to

EXAMPLES
  Show every logged-in account and which one is active

    $ diva account list

See code: src/commands/account/list.ts

diva account remove

sign out of an account and forget its stored token

USAGE
  $ diva account remove [-h]

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  sign out of an account and forget its stored token

EXAMPLES
  Pick the account to sign out of

    $ diva account remove

See code: src/commands/account/remove.ts

diva account use

switch the active account

USAGE
  $ diva account use [-h] [-u <value>]

FLAGS
  -h, --help          Show CLI help.
  -u, --user=<value>  email of the account to switch to

DESCRIPTION
  switch the active account

EXAMPLES
  Pick the account to switch to from a list

    $ diva account use

  Switch to a specific account without prompting

    $ diva account use --user [email protected]

See code: src/commands/account/use.ts

diva autocomplete [SHELL]

Display autocomplete installation instructions.

USAGE
  $ diva autocomplete [SHELL] [-r]

ARGUMENTS
  [SHELL]  (zsh|bash|powershell) Shell type

FLAGS
  -r, --refresh-cache  Refresh cache (ignores displaying instructions)

DESCRIPTION
  Display autocomplete installation instructions.

EXAMPLES
  $ diva autocomplete

  $ diva autocomplete bash

  $ diva autocomplete zsh

  $ diva autocomplete powershell

  $ diva autocomplete --refresh-cache

See code: @oclif/plugin-autocomplete

diva cloudserver create

create a new cloud server (VPS) — walks through provider, location, plan, OS and wallet

USAGE
  $ diva cloudserver create [-h] [--hostname <value>] [--wallet <value>]

FLAGS
  -h, --help              Show CLI help.
      --hostname=<value>  hostname for the new cloud server
      --wallet=<value>    name of the wallet to pay from

DESCRIPTION
  create a new cloud server (VPS) — walks through provider, location, plan, OS and wallet

EXAMPLES
  Create a cloud server, choosing every option interactively

    $ diva cloudserver create

  Skip the hostname prompt

    $ diva cloudserver create --hostname my-vps

See code: src/commands/cloudserver/create.ts

diva cloudserver delete

permanently delete a cloud server

USAGE
  $ diva cloudserver delete [-h] [--hostname <value>] [-y]

FLAGS
  -h, --help              Show CLI help.
  -y, --yes               skip the confirmation prompt
      --hostname=<value>  hostname of the cloud server to delete

DESCRIPTION
  permanently delete a cloud server

EXAMPLES
  Pick a cloud server from an interactive list, then confirm

    $ diva cloudserver delete

  Delete a specific cloud server without a confirmation prompt

    $ diva cloudserver delete --hostname my-vps --yes

See code: src/commands/cloudserver/delete.ts

diva cloudserver list

list the cloud servers (VPS) on your account

USAGE
  $ diva cloudserver list [-h]

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  list the cloud servers (VPS) on your account

EXAMPLES
  List every cloud server on the active account

    $ diva cloudserver list

See code: src/commands/cloudserver/list.ts

diva cloudserver restart

restart a cloud server

USAGE
  $ diva cloudserver restart [-h] [--hostname <value>]

FLAGS
  -h, --help              Show CLI help.
      --hostname=<value>  hostname of the cloud server to restart

DESCRIPTION
  restart a cloud server

EXAMPLES
  Pick a cloud server from an interactive list

    $ diva cloudserver restart

  Restart a specific cloud server by hostname

    $ diva cloudserver restart --hostname my-vps

See code: src/commands/cloudserver/restart.ts

diva cloudserver start

turn on a cloud server

USAGE
  $ diva cloudserver start [-h] [--hostname <value>]

FLAGS
  -h, --help              Show CLI help.
      --hostname=<value>  hostname of the cloud server to turn on

DESCRIPTION
  turn on a cloud server

EXAMPLES
  Pick a cloud server from an interactive list

    $ diva cloudserver start

  Turn on a specific cloud server by hostname

    $ diva cloudserver start --hostname my-vps

See code: src/commands/cloudserver/start.ts

diva cloudserver stop

turn off a cloud server

USAGE
  $ diva cloudserver stop [-h] [--hostname <value>]

FLAGS
  -h, --help              Show CLI help.
      --hostname=<value>  hostname of the cloud server to turn off

DESCRIPTION
  turn off a cloud server

EXAMPLES
  Pick a cloud server from an interactive list

    $ diva cloudserver stop

  Turn off a specific cloud server by hostname

    $ diva cloudserver stop --hostname my-vps

See code: src/commands/cloudserver/stop.ts

diva deploy

upload the current project and deploy it to a service

USAGE
  $ diva deploy [-h] [-p <value>] [-s <value>]

FLAGS
  -h, --help             Show CLI help.
  -p, --path=<value>     project directory to upload (defaults to the current directory)
  -s, --service=<value>  name of the service to deploy to

DESCRIPTION
  upload the current project and deploy it to a service

EXAMPLES
  Deploy the current directory, picking the service from a list

    $ diva deploy

  Deploy the current directory to a named service

    $ diva deploy --service my-app

  Deploy a project that lives somewhere else

    $ diva deploy --path ./apps/api --service my-api

  Pin the target service in the project, so plain `deploy` always works

    echo '{"service": "my-app"}' > diva.json && diva deploy

  See exactly which files are excluded from the upload

    DIVA_DEBUG=true diva deploy -s my-app

See code: src/commands/deploy.ts

diva help [COMMAND]

Display help for diva.

USAGE
  $ diva help [COMMAND...] [-n]

ARGUMENTS
  [COMMAND...]  Command to show help for.

FLAGS
  -n, --nested-commands  Include all nested commands in the output.

DESCRIPTION
  Display help for diva.

See code: @oclif/plugin-help

diva login

sign in to your hub.cloudiva.net account

USAGE
  $ diva login [-h] [-u <value>] [-p <value>] [-t <value>]

FLAGS
  -h, --help              Show CLI help.
  -p, --password=<value>  your password (prompted for if omitted)
  -t, --token=<value>     API token, for non-interactive sign-in
  -u, --username=<value>  your email address

DESCRIPTION
  sign in to your hub.cloudiva.net account

EXAMPLES
  Sign in interactively (prompts for email and password)

    $ diva login

  Sign in with an API token — the right choice for CI

    $ diva login --token <your-api-token>

  Pass the email up front and be prompted only for the password

    $ diva login --email [email protected]

  Add a second account (both stay signed in; switch with `account use`)

    $ diva login --email [email protected]

See code: src/commands/login.ts

diva plugins

List installed plugins.

USAGE
  $ diva plugins [--json] [--core]

FLAGS
  --core  Show core plugins.

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  List installed plugins.

EXAMPLES
  $ diva plugins

See code: @oclif/plugin-plugins

diva plugins add PLUGIN

Installs a plugin into diva.

USAGE
  $ diva plugins add PLUGIN... [--json] [-f] [-h] [-s | -v]

ARGUMENTS
  PLUGIN...  Plugin to install.

FLAGS
  -f, --force    Force npm to fetch remote resources even if a local copy exists on disk.
  -h, --help     Show CLI help.
  -s, --silent   Silences npm output.
  -v, --verbose  Show verbose npm output.

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Installs a plugin into diva.

  Uses npm to install plugins.

  Installation of a user-installed plugin will override a core plugin.

  Use the DIVA_NPM_LOG_LEVEL environment variable to set the npm loglevel.
  Use the DIVA_NPM_REGISTRY environment variable to set the npm registry.

ALIASES
  $ diva plugins add

EXAMPLES
  Install a plugin from npm registry.

    $ diva plugins add myplugin

  Install a plugin from a github url.

    $ diva plugins add https://github.com/someuser/someplugin

  Install a plugin from a github slug.

    $ diva plugins add someuser/someplugin

diva plugins:inspect PLUGIN...

Displays installation properties of a plugin.

USAGE
  $ diva plugins inspect PLUGIN...

ARGUMENTS
  PLUGIN...  [default: .] Plugin to inspect.

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Displays installation properties of a plugin.

EXAMPLES
  $ diva plugins inspect myplugin

See code: @oclif/plugin-plugins

diva plugins install PLUGIN

Installs a plugin into diva.

USAGE
  $ diva plugins install PLUGIN... [--json] [-f] [-h] [-s | -v]

ARGUMENTS
  PLUGIN...  Plugin to install.

FLAGS
  -f, --force    Force npm to fetch remote resources even if a local copy exists on disk.
  -h, --help     Show CLI help.
  -s, --silent   Silences npm output.
  -v, --verbose  Show verbose npm output.

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Installs a plugin into diva.

  Uses npm to install plugins.

  Installation of a user-installed plugin will override a core plugin.

  Use the DIVA_NPM_LOG_LEVEL environment variable to set the npm loglevel.
  Use the DIVA_NPM_REGISTRY environment variable to set the npm registry.

ALIASES
  $ diva plugins add

EXAMPLES
  Install a plugin from npm registry.

    $ diva plugins install myplugin

  Install a plugin from a github url.

    $ diva plugins install https://github.com/someuser/someplugin

  Install a plugin from a github slug.

    $ diva plugins install someuser/someplugin

See code: @oclif/plugin-plugins

diva plugins link PATH

Links a plugin into the CLI for development.

USAGE
  $ diva plugins link PATH [-h] [--install] [-v]

ARGUMENTS
  PATH  [default: .] path to plugin

FLAGS
  -h, --help          Show CLI help.
  -v, --verbose
      --[no-]install  Install dependencies after linking the plugin.

DESCRIPTION
  Links a plugin into the CLI for development.

  Installation of a linked plugin will override a user-installed or core plugin.

  e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
  command will override the user-installed or core plugin implementation. This is useful for development work.


EXAMPLES
  $ diva plugins link myplugin

See code: @oclif/plugin-plugins

diva plugins remove [PLUGIN]

Removes a plugin from the CLI.

USAGE
  $ diva plugins remove [PLUGIN...] [-h] [-v]

ARGUMENTS
  [PLUGIN...]  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ diva plugins unlink
  $ diva plugins remove

EXAMPLES
  $ diva plugins remove myplugin

diva plugins reset

Remove all user-installed and linked plugins.

USAGE
  $ diva plugins reset [--hard] [--reinstall]

FLAGS
  --hard       Delete node_modules and package manager related files in addition to uninstalling plugins.
  --reinstall  Reinstall all plugins after uninstalling.

See code: @oclif/plugin-plugins

diva plugins uninstall [PLUGIN]

Removes a plugin from the CLI.

USAGE
  $ diva plugins uninstall [PLUGIN...] [-h] [-v]

ARGUMENTS
  [PLUGIN...]  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ diva plugins unlink
  $ diva plugins remove

EXAMPLES
  $ diva plugins uninstall myplugin

See code: @oclif/plugin-plugins

diva plugins unlink [PLUGIN]

Removes a plugin from the CLI.

USAGE
  $ diva plugins unlink [PLUGIN...] [-h] [-v]

ARGUMENTS
  [PLUGIN...]  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ diva plugins unlink
  $ diva plugins remove

EXAMPLES
  $ diva plugins unlink myplugin

diva plugins update

Update installed plugins.

USAGE
  $ diva plugins update [-h] [-v]

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Update installed plugins.

See code: @oclif/plugin-plugins

diva service domain add

connect a custom domain to a service

USAGE
  $ diva service domain add [-h] [-s <value>] [-d <value>]

FLAGS
  -d, --domain=<value>   domain name to connect, e.g. www.example.com
  -h, --help             Show CLI help.
  -s, --service=<value>  name of the service to connect the domain to

DESCRIPTION
  connect a custom domain to a service

EXAMPLES
  Pick the service and enter the domain interactively

    $ diva service domain add

  Connect a domain in one non-interactive command

    $ diva service domain add -s my-app -d www.example.com

See code: src/commands/service/domain/add.ts

diva service domain remove

disconnect a custom domain from a service

USAGE
  $ diva service domain remove [-h] [-s <value>] [-d <value>]

FLAGS
  -d, --domain=<value>   domain name to disconnect
  -h, --help             Show CLI help.
  -s, --service=<value>  name of the service the domain is connected to

DESCRIPTION
  disconnect a custom domain from a service

EXAMPLES
  Pick the service and enter the domain interactively

    $ diva service domain remove

  Disconnect a domain in one non-interactive command

    $ diva service domain remove -s my-app -d www.example.com

See code: src/commands/service/domain/remove.ts

diva service list

list the services on your account

USAGE
  $ diva service list [-h]

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  list the services on your account

EXAMPLES
  List every service on the active account

    $ diva service list

  Switch account first, then list that account’s services

    $ diva account use -u [email protected] && diva service list

See code: src/commands/service/list.ts

diva service logs

read the latest logs from a service

USAGE
  $ diva service logs [-h] [-s <value>]

FLAGS
  -h, --help             Show CLI help.
  -s, --service=<value>  name of the service to read logs from

DESCRIPTION
  read the latest logs from a service

EXAMPLES
  Pick a service from an interactive list

    $ diva service logs

  Read logs for a specific service

    $ diva service logs --service my-app

  Search the logs for errors

    $ diva service logs -s my-app | grep -i error

  Save the logs to a file

    $ diva service logs -s my-app > my-app.log

See code: src/commands/service/logs.ts

diva service resize

change the RAM, CPU and disk allocated to a service

USAGE
  $ diva service resize [-h] [-s <value>] [-r <value>] [-c <value>] [-d <value>]

FLAGS
  -c, --cpu=<value>      CPU cores, in steps of 0.5 (e.g. 0.5, 1, 2)
  -d, --disk=<value>     disk in GB, in steps of 5 (e.g. 5, 10, 30)
  -h, --help             Show CLI help.
  -r, --ram=<value>      RAM in GB, in steps of 0.5 (e.g. 0.5, 1, 2)
  -s, --service=<value>  name of the service to resize

DESCRIPTION
  change the RAM, CPU and disk allocated to a service

EXAMPLES
  Choose the service and every resource interactively

    $ diva service resize

  Resize a service in one non-interactive command

    $ diva service resize -s my-app --ram 2 --cpu 1 --disk 10

  Set only the RAM and pick the rest from the prompts

    $ diva service resize -s my-app --ram 4

See code: src/commands/service/resize.ts

diva service restart

restart a service

USAGE
  $ diva service restart [-h] [-s <value>]

FLAGS
  -h, --help             Show CLI help.
  -s, --service=<value>  name of the service to restart

DESCRIPTION
  restart a service

EXAMPLES
  Pick a service from an interactive list

    $ diva service restart

  Restart a specific service by name

    $ diva service restart --service my-app

  Restart, then tail the logs to confirm it came back up

    $ diva service restart -s my-app && diva service logs -s my-app

See code: src/commands/service/restart.ts

diva service start

start a stopped service

USAGE
  $ diva service start [-h] [-s <value>]

FLAGS
  -h, --help             Show CLI help.
  -s, --service=<value>  name of the service to start

DESCRIPTION
  start a stopped service

EXAMPLES
  Pick a service from an interactive list

    $ diva service start

  Start a specific service by name

    $ diva service start --service my-app

  Same, using the short flag

    $ diva service start -s my-app

See code: src/commands/service/start.ts

diva service stop

stop a running service

USAGE
  $ diva service stop [-h] [-s <value>]

FLAGS
  -h, --help             Show CLI help.
  -s, --service=<value>  name of the service to stop

DESCRIPTION
  stop a running service

EXAMPLES
  Pick a service from an interactive list

    $ diva service stop

  Stop a specific service by name

    $ diva service stop --service my-app

  Same, using the short flag

    $ diva service stop -s my-app

See code: src/commands/service/stop.ts

diva version

USAGE
  $ diva version [--json] [--verbose]

FLAGS
  --verbose  Show additional information about the CLI.

GLOBAL FLAGS
  --json  Format output as json.

FLAG DESCRIPTIONS
  --verbose  Show additional information about the CLI.

    Additionally shows the architecture, node version, operating system, and versions of plugins that the CLI is using.

See code: @oclif/plugin-version

diva wallet list

list the wallets on your account

USAGE
  $ diva wallet list [-h]

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  list the wallets on your account

EXAMPLES
  Show every wallet and its balance

    $ diva wallet list

See code: src/commands/wallet/list.ts