Skip to main content
This guide takes you from nothing to a running Voyant application. You will install the CLI, scaffold a project from the operator starter, point it at a database, and start the dev server.

Prerequisites

Before you begin, make sure you have:
  • Node.js 20 or newer and a package manager. The starters use pnpm.
  • A PostgreSQL database. Any Postgres works for local development. In production, Voyant Cloud provisions a managed serverless Postgres database for each organization, so you do not run your own.
  • A terminal. No Voyant Cloud account is needed for the open-source workflow.

Get started

1

Install the CLI

The Voyant CLI is a single binary published to npm. Install it globally.
npm install -g @voyant-travel/cli
You can also use pnpm add -g @voyant-travel/cli. Confirm it works:
voyant --help
2

Scaffold a project

Create a new app from the operator starter, a tour-operator application shell wired with Cloudflare Workers, TanStack Start, Hono, Better Auth, and Drizzle.
voyant new my-travel-app --template operator
cd my-travel-app
pnpm install
Built-in starters are downloaded from the GitHub release matching your CLI version. You can also point --template at a local starter directory.
3

Configure secrets and the database

Copy the example environment file and fill in your secrets.
cp .dev.vars.example .dev.vars
Set your local worker secrets in .dev.vars, and provide DATABASE_URL in .env for Drizzle and the local worker processes.
.env
DATABASE_URL="postgres://user:password@localhost:5432/my_travel_app"
4

Run migrations

Apply the schema for the modules your starter includes.
pnpm db:migrate
5

Start the dev server

pnpm dev
The operator starter serves on port 3300 by default. Open it in your browser and sign in with the seeded credentials from the starter README.

What you just built

The operator starter is a deployable application, not a demo. It includes a normalized travel operations data model on Postgres, headless domain modules for catalog, commerce, inventory, operations, bookings, finance, and more, a Hono-based API layer, and React UI packages for each domain.

Next steps

Understand the architecture

See how modules, links, workflows, and the storefront fit together.

Add a module

Generate a new domain module and link it to existing ones.

Deploy to Voyant Cloud

Move from local development to managed hosting.

Connect supplier inventory

Sell cruises, hotels, and flights from third-party suppliers.
Need help? Reach out at hi@voyant.travel.