Skip to content

BuildConfiguration

Ahmed Abbas edited this page Apr 7, 2026 · 1 revision

JavaScript SDK — Build Configuration

Environment Variables

Variable Description Values
LOG_LEVEL Minimum log level to keep in the bundle (removes lower levels) 0 = ALL, 1 = DEBUG, 2 = INFO, 3 = WARN, 4 = ERROR, 5 = SILENT
BUNDLES Comma-separated list of bundle formats to build (defaults to all) cjs, cjs-legacy, esm, umd

Examples

# Remove all log statements from the bundle
LOG_LEVEL=5 yarn sdk:build

# Build only CommonJS bundles
BUNDLES=cjs,cjs-legacy yarn sdk:build

Custom Build

You can include the SDK repository as a submodule in your TypeScript project for a custom build.

Step 1: Add as Submodule

git submodule add https://github.com/convertcom/javascript-sdk javascript-sdk

Step 2: Configure Package Resolution

Option A: Workspaces (add to your package.json):

{
  "workspaces": ["javascript-sdk/packages/*"]
}

If using PnP, add to pnpm-workspace.yaml:

packages:
  - 'javascript-sdk/packages/*'

Option B: TypeScript Compiler Options (add to tsconfig.json):

{
  "compilerOptions": {
    "paths": {
      "@convertcom/js-sdk-api": ["./javascript-sdk/packages/api"],
      "@convertcom/js-sdk-bucketing": ["./javascript-sdk/packages/bucketing"],
      "@convertcom/js-sdk-data": ["./javascript-sdk/packages/data"],
      "@convertcom/js-sdk-enums": ["./javascript-sdk/packages/enums"],
      "@convertcom/js-sdk-event": ["./javascript-sdk/packages/event"],
      "@convertcom/js-sdk-experience": ["./javascript-sdk/packages/experience"],
      "@convertcom/js-sdk-logger": ["./javascript-sdk/packages/logger"],
      "@convertcom/js-sdk-rules": ["./javascript-sdk/packages/rules"],
      "@convertcom/js-sdk-segments": ["./javascript-sdk/packages/segments"],
      "@convertcom/js-sdk-types": ["./javascript-sdk/packages/types"],
      "@convertcom/js-sdk-utils": ["./javascript-sdk/packages/utils"],
      "@convertcom/js-sdk": ["./javascript-sdk/packages/js-sdk"]
    }
  }
}

Step 3: Add Build Script

{
  "scripts": {
    "build:sdk": "cd javascript-sdk && BUNDLES=cjs,esm LOG_LEVEL=5 yarn sdk:build"
  }
}

Note: Both BUNDLES and LOG_LEVEL are optional (see Environment Variables above).

Step 4: Build

{
  "scripts": {
    "build": "yarn build:sdk && rollup -c"
  }
}

Step 5: Install Dependencies

git submodule update --init --remote
yarn
cd javascript-sdk && yarn
yarn build

Clone this wiki locally