Your First App in 15 Minutes

Create, build, and deploy your first revenexx App using the CLI

In this guide, you'll install the revenexx CLI, authenticate, register a cloud function (App) from its manifest, and deploy it live. Let's go.

1. Install the CLI

Option A: npm (Node.js 18+)

Bash
npm install -g @revenexx/cli
revenexx -v
# Output: revenexx 1.x.x

You'll need npm configured with GitHub Packages access. See Prerequisites: GitHub Personal Access Token for details.

Option B: Homebrew (macOS / Linux)

Bash
brew install revenexx-sdks/cli/revenexx
revenexx -v
# Output: revenexx 1.x.x

Option C: Download a binary (any platform)

Grab the asset for your platform from the latest release — this is the route to use on Windows if you don't have npm:

Bash
curl -fsSL -o revenexx https://github.com/revenexx-sdks/cli/releases/latest/download/revenexx-darwin-arm64
chmod +x revenexx && sudo mv revenexx /usr/local/bin/revenexx
revenexx -v
# Output: revenexx 1.x.x

2. Authenticate

The CLI uses token-based authentication (no email/password). Create a Personal Access Token in Cockpit first, then authenticate.

Get your token

  1. Log in at app.revenexx.com
  2. Navigate to AccountTokens
  3. Click Create Token and copy it

Authenticate via CLI

Sign in with your token and the tenant you're working in:

Bash
revenexx login --token <your-token> --tenant <your-tenant-slug>

The CLI validates the token against the gateway (https://api.revenexx.com) and saves your credentials in ~/.revenexx/prefs.json for future commands. In CI, set REVENEXX_API_KEY and REVENEXX_TENANT instead of running login.

There is no project file and no init step — context comes from your login session, environment variables, and the active tenant. Switch tenants any time with:

Bash
revenexx tenants use <your-tenant-slug>

See Authentication for the full credential-resolution order.

3. Define Your App

An App is a serverless cloud function described by a manifest.json. Create a project directory with your code and a manifest:

Bash
mkdir my-revenue-app
cd my-revenue-app

manifest.json

The manifest declares the App's identity, runtime, and what it can access. A minimal example:

JSON
{
  "name": "hello-world",
  "vendor": "acme",
  "version": "1.0.0",
  "title": "Hello World",
  "runtime": "node-20"
}

See the Manifest Reference for every field.

index.js (Node.js example)

Write your first piece of business logic. Here's a starting point that does something slightly more revenexx-flavored than a hello-world — it returns a stub response shaped like an order-created event handler:

JavaScript
export default async (req, res) => {
  const orderId = req.body?.order_id || 'demo-order'

  return res.json({
    received: true,
    order_id: orderId,
    processed_at: new Date().toISOString(),
    note: 'In a real app this is where you would react to order.created — update inventory, notify a fulfillment system, send a confirmation email.',
  })
}

You don't need to declare event subscriptions yet — that's part of the App Model. For now this function is just a callable HTTP endpoint. See App Model Concept when you're ready to wire it into the platform's event bus, give it its own database table, or surface it in Cockpit.

4. Register the App

Register the App with the platform from its manifest:

Bash
revenexx apps register --manifest manifest.json

Confirm it's registered and note its function id:

Bash
revenexx apps list

5. Deploy

Create a deployment from your code and activate it in one step. Use the function id from the previous step:

Bash
revenexx apps create-deployment --function-id hello-world --activate true --code .

To deploy from a connected Git repository instead, use apps create-vcs-deployment. Run revenexx apps <command> --help for the exact flags.

Your function is now live. Cockpit shows a public endpoint where you can invoke it.

6. Test Your Deployment

Copy the endpoint from Cockpit and test it:

Bash
curl https://api.revenexx.com/v1/functions/hello-world/executions
# {
#   "message": "Hello from revenexx!",
#   "timestamp": "2025-05-26T12:34:56.000Z"
# }

What's Next?

App Model Concept

How Apps work — dependencies, permissions, and events.

Manifest Reference

Define app identity, dependencies, and platform access.

Integration Studio

Connect external systems with visual workflows.

Storefronts

Build a customer-facing storefront on Nuxt 4.

Troubleshooting

Token expired? Re-authenticate: revenexx login --token <new-token> --tenant <your-tenant-slug>

Deployment failed? Review the deployment and its build status: revenexx apps list-deployments --function-id hello-world (and view build logs in Cockpit).

Can't find the CLI? Verify installation: which revenexx (Unix) or where.exe revenexx (Windows). If missing, reinstall.

Was this page helpful?