Skip to main content
The Crave CLI 1.x clones a current public storefront example, writes its public environment settings, installs dependencies, and can start the local development server. It is a fast way to inspect the existing integration shape, not a substitute for production review.
The CLI publishes as @craveup/cli. The older unscoped craveup package on npm is unmaintained and stops at 1.0.3 — install the scoped name. The installed command is still craveup, so craveup login and the rest are unchanged.
The three current CLI 1.x choices are legacy public examples pinned to fixed Git commits for reproducibility. They predate the production-proven web and Expo generator releases now being validated. Review and migrate dependencies, browser security, exact origins, and the complete sandbox ordering flow before deploying one. For a new implementation, treat the published Storefront API and SDK guides as the current contract.

Install & run

Run the CLI anywhere you want to create the project directory:
The wizard will guide you through:
  • Choosing a legacy public example (storefront-default, Tomodachi Sushi, or Xichuan Noodles)
  • Selecting the published organization and location
  • Naming the project directory
  • Installing dependencies with your detected package manager
  • Optionally starting pnpm dev so you can preview immediately

Sign in

Sign in before scaffolding so the CLI can discover the organizations and locations your account can manage:
The session is stored in the macOS keychain, falling back to ~/.config/craveup/credentials.json, and is shared with the CraveUp MCP server — signing in through either one satisfies the other. On a headless or remote machine, use craveup login --device to pair with a code you open on any other device.

Non-interactive usage

Prefer automation or CI pipelines? Use flags to skip prompts. Example:

Environment variables

The CLI creates or updates .env.local with public storefront settings:
Tip: CRAVEUP_DASHBOARD_URL, CRAVEUP_PARTNER_API_URL, and a private CRAVEUP_API_KEY are CLI/server concerns. They are never written to a public storefront environment variable.
The merchant and location variables are standalone/local overrides. A hosted cravejs-storefront-template resolves the merchant from its controlled host/subdomain and the location from the [locationId] route instead of duplicating tenant selection in production environment variables. The CLI does not write NEXT_PUBLIC_STOREFRONT_URL; the template derives its canonical metadata origin from the request host. Add that optional override manually only when the deployed metadata origin must differ from the request host.

Example anatomy and production boundary

The current examples do not share one guaranteed framework or dependency baseline. Inspect the generated package.json and lockfile before changing the project. Do not assume that a CLI 1.x example already contains Next.js 16.3, @craveup/storefront-sdk@2.0.1, the current component structure, or the complete browser-security contract. For new production implementation, start with the exact-pinned Storefront SDK guide and the relevant web or mobile quickstart, then validate the sandbox vertical slice before release. Explore the generated repository after the CLI finishes:
You now have the selected example running locally. Continue to the Storefront SDK guide to build against the current public contract and review the deployment boundary before accepting traffic.