Skip to content

New: AI agent integration via Model Context Protocol (MCP).Learn more

Installation

Evolve supports development on macOS, Windows (WSL), and Linux environments. This guide walks you through installation, environment setup, and running the platform locally.

Tool Purpose
Node.js 24+ JavaScript runtime
pnpm (via corepack) Package manager
go-task Task runner
1Password CLI Environment variable management
Docker Local development services
Terminal window
brew install node@24 go-task 1password-cli
corepack enable
pnpm install
  1. Install WSL 2 with the default Ubuntu distro:

    Terminal window
    wsl --install
  2. Install Homebrew, then install dependencies:

    Terminal window
    brew install go-task nvm 1password-cli
  3. Install Node.js 24 and enable corepack:

    Terminal window
    nvm install 24
    corepack enable
  1. Install Node.js 24+ using a package manager of your choice.

  2. Install 1Password CLI.

  3. Install Task:

    Terminal window
    snap install task --classic

Evolve uses 1Password to manage environment variables. A fully working .env file is available in your project’s shared vault:

Terminal window
task get-env
Terminal window
pnpm dev

Visit the storefront at http://localhost:3000.

For OAuth callbacks, secure cookies, and the authoring chrome’s cross-subdomain session probe, you’ll want real HTTPS. Evolve uses Portless to put every service behind a stable *.evolve.localhost hostname with a system-trusted cert:

Terminal window
pnpm dev:setup-portless # one-time per machine
pnpm dev:secure # same as pnpm dev, served over HTTPS

See Local HTTPS with Portless for the full walk-through, including how to add new services and the SameSite-cookie reasoning behind the two-level domain.

A Docker Compose file provides supporting services for local development:

Service URL
Redis
Jaeger (OpenTelemetry) http://localhost:16686
Mailpit (local SMTP) http://localhost:8025
Terminal window
task docker:services # start
docker compose down # stop
Command Description
pnpm dev Start the full development environment
pnpm check Run formatting, typechecking, linting, and Terraform checks
pnpm test Run all tests
pnpm codegen Generate GraphQL types and schema files
task get-env Pull latest .env from 1Password
task docker:services Start Redis, Jaeger, and Mailpit

Example GraphQL Gateway API calls are included in the api-collection folder, meant to be used with the Bruno API Client:

  1. Download and install Bruno.
  2. Import the collection from the api-collection folder.
  3. Select the correct environment (top right corner) and execute calls.
Documentation Demo environments
GitHub AWS / Commercetools / Storyblok
Storybook GCP / Commercetools / Storyblok
Figma design system Azure / Commercetools / Storyblok
Lab Digital engineering docs