Developers

DashNex CLI

Command-line interface for developers to integrate, customize, and deploy anything on your WebApp directly from your IDE.

Installation

Install the DashNex CLI globally using npm:

$
npm i -g dashnex

Verify your installation by checking the version:

dashnex version

Every DashNex app also has the CLI available locally as a dependency, so you can run it withnpx dashnex inside a project folder without installing it globally.

Getting Started

Here's the typical workflow to get up and running:

# Authenticate with your DashNex account
dashnex login

# Pull an existing app to a local folder
dashnex app pull my-app

# Or create a new app
dashnex app create

# Start the local development server
dashnex dev

# Push and deploy your app
dashnex app push --deploy

How Commands Are Discovered

The CLI ships with a core set of commands and then scans node_modules for every installed@dashnex/* module, loading any commands those modules expose. This means the exact command list depends on which modules your app has installed. Run dashnex with no arguments inside your project to see the full list for that specific app.

The commands documented below are the ones provided by the CLI itself and by the standard modules (@dashnex/core, @dashnex/ui, @dashnex/system) that are present in every app. Module authors can add their own — see CLI Commands in the module template wiki.

Global Options

These options work on any command:

OptionDescription
-V, --versionOutput the version number
--ciDisable spinners and interactive prompts (CI mode)
-h, --helpDisplay help for a command

Account

dashnex login

Authenticate with your DashNex account. When run without options, the CLI will interactively prompt for your credentials. You can also pass them directly for use in scripts or CI/CD.

OptionDescription
--email <email>Email address (skip prompt)
--password <password>Password (skip prompt)
--code <code>Two-factor authentication code (skip prompt)
--business <id>Business ID to select (skip prompt)
$
dashnex login --email user@example.com --password pswd --code 123456 --business 12345

Credentials are stored locally in .dashnex/settings.json. If you run this command in your home folder, the credentials will be valid for all subfolders.

dashnex logout

Log out of the current session and remove local credentials.

dashnex whoami

Show the currently logged-in business and user.

dashnex version

Display the version of the CLI.

App Management

These commands manage DashNex applications and should be executed inside an application folder.

dashnex app create

Create a new DashNex application. The CLI will guide you through configuring the app interactively, or you can pass options directly.

OptionDescription
--subdomain <subdomain>Subdomain for the app (CI mode, skips prompts)
--pullAutomatically pull the app after creation, skipping the prompt
--no-pullSkip the pull prompt and just show the success message

dashnex app pull [folder]

Pull an existing application into the specified folder. If no folder is given, the CLI prompts for one.

OptionDescription
-y, --yesSkip prompts and child commands (CI mode)

dashnex app push

Push your local application to DashNex. Pre-push checks run first unless you opt out.

OptionDescription
--deployAuto-deploy after push, skipping the prompt
--no-deploySkip the deploy prompt
--no-checkSkip pre-push checks
-f, --forcePush even when the remote has changes you don't have locally
-y, --yesSkip prompts (CI mode)

dashnex app deploy

Deploy the application to DashNex. Shows real-time progress so you can follow the deployment as it happens.

OptionDescription
--no-checkSkip pre-deploy checks

dashnex app status

Show the current application status.

dashnex app clear

Delete local dependencies, caches, and build output — useful when you want a clean slate. It removes node_modules, the Vite caches, the generated module registry at src/dashnex, and dist. Run dashnex install afterwards to set the application up again.

Run interactively, it lists exactly what will be deleted and asks you to confirm (the default is no), then asks separately whether to delete the local database at .wrangler as well — so your local data is kept unless you explicitly opt in.

OptionDescription
-y, --yesSkip all prompts (CI mode). Note that this deletes the local database along with everything else

If a file can't be deleted because it's in use, stop dashnex dev and run the command again.

dashnex app tail

Stream live console and debug logs from the deployed worker. Press Ctrl+C to stop.

OptionDescription
--level <level>Minimum level to show: log, info, warn, error, debug
--filter <regex>Only show records whose args match this regex
--debugAlso enable DEBUG=1 on the worker so debug-gated logs are shown

dashnex app delete

Delete the application from DashNex. This action is irreversible.

OptionDescription
-y, --yesSkip confirmation prompt

Development

dashnex install

Install dependencies using pnpm (preferred) or npm. Run this in a DashNex application folder.

dashnex dev

Run the development server. Run this in a DashNex application folder.

dashnex check

Run build-time validations. Run this in a DashNex application folder. This is the same check that runs automatically before app push and app deploy.

dashnex build

Build the static module — discovers installed @dashnex modules and generates the module registry, CSS imports, and worker configuration.

OptionDescription
-o, --output <file>Output directory for generated files (default: src/dashnex)

dashnex bindings

Extract and merge bindings from all DashNex modules.

OptionDescription
--jsonOutput bindings as JSON

dashnex router

Display all registered routes and pages.

dashnex env

Display environment variables.

dashnex postinstall

Apply compatibility patches for third-party packages. This normally runs automatically as part of the project's postinstall script, so you rarely need to invoke it by hand.

Database

Database commands operate on the local database by default. Pass --remote to target the deployed database instead.

dashnex db create

Create the database, local or remote.

OptionDescription
--remoteCreate the remote database instead of the local one

dashnex db migrate

Run all pending database migrations from installed @dashnex modules.

OptionDescription
--remoteRun migrations on the remote database instead of the local one

dashnex db execute [db]

Execute SQL against the application database. The optional positional argument is the database binding name, defaulting to CORE_DB.

OptionDescription
--localExecute against the local database (default)
--remoteExecute against the deployed remote database
--command <sql>SQL string to execute
--file <path>Path to a .sql file to execute
--jsonOutput raw JSON results
dashnex db execute --command "SELECT * FROM users LIMIT 10" --json

dashnex db export [db]

Export the application database as a .sql file. The optional positional argument is the database binding name, defaulting to CORE_DB.

OptionDescription
--localExport the local database (default)
--remoteExport the deployed remote database
--output <path>Destination .sql file (required)

UI Components

Both ui commands accept --cwd <path> to run against a different working directory.

dashnex ui add <name>

Add a component from the shadcn registry into your project.

dashnex ui remove <name>

Remove a locally ejected component.

Secrets

Secrets are encrypted values bound to your deployed worker — use them for API keys and other credentials that shouldn't live in your source code.

dashnex secrets list

List all secret names bound to the worker. Values are never displayed.

dashnex secrets set [name] [value]

Create or update a secret. If you omit the name or value, the CLI prompts for them — the value prompt uses masked input.

OptionDescription
--name <name>Secret name (alternative to the positional argument)
--value <value>Secret value (alternative to the positional argument)

dashnex secrets delete [name]

Delete a secret. If you omit the name, the CLI prompts for it.

OptionDescription
--name <name>Secret name (alternative to the positional argument)

CI/CD Usage

Use the --ci flag in CI/CD environments to disable interactive spinners and prompts:

dashnex login --email "$DASHNEX_EMAIL" --password "$DASHNEX_PASSWORD" --business "$DASHNEX_BUSINESS" --ci
dashnex app push --deploy --yes --ci

What You Can Build

With the DashNex CLI, you can build and deploy custom designs, integrations, and full-stack applications on top of your WebApp. The platform provides the foundation — authentication, payments, email, CRM, and more — while you focus on your unique product offering.

Developers can build entire SaaS products on top of the WebApp and combine the functionality of powerful modules like instraCHAT or UltraX Agent with their own custom product using Reseller Modules.