Skip to main content

@playrunner/javascript

JavaScript Integration

Configure JavaScript workflow nodes using the shared integration SDK UI contract. Executable JavaScript support is not currently wired into the Orchestrator.

View on npmnpm install @playrunner/javascript
Action nodeCode editorExecution unavailable
Node typeAction
Integration idcode
Backend mount/api/javascript
ExecutionNot currently available
Frontend

Code-node configuration

Exports javascriptIntegration and JavascriptConfigPanel. The integration keeps the existing code id so saved workflows continue to resolve.

SDK usage

Shared config fields

Uses @playrunner/integration-sdk for config field layout and host-provided UI primitives.

Backend

Consistent API shape

Exports javascriptRouter, mounted at /api/javascript, even though the current JavaScript node has no backend endpoints.

Orchestrator

Execution not yet wired

The package has no Orchestrator contribution, and code is not an explicit host-managed node type. A JavaScript node therefore cannot currently run.

Icon

Lucide source

Uses the Code2 icon from lucide-react, so it does not need a packaged image asset.

Current execution status

@playrunner/javascript currently contributes configuration UI and an empty API router only. Its manifest does not declare an ./orchestrator surface, and the Orchestrator has no host-managed code executor. A workflow containing this node will fail preflight until an executor is implemented and bundled.

Setup

  1. Add a JavaScript action node to the workflow canvas.
  2. Enter the JavaScript source in the node's code editor.
  3. Connect any upstream nodes whose workflow data the script will use.

The configuration UI is available, but JavaScript execution is not currently wired into the Orchestrator. Workflows containing this node fail preflight until an executor is implemented and bundled.

Exports

import javascriptIntegration, {
JavascriptConfigPanel,
} from '@playrunner/javascript';
import javascriptApiContribution, {
javascriptRouter,
} from '@playrunner/javascript/api';

Frontend

The frontend entrypoint default-exports javascriptIntegration, which keeps the existing integration id as code so saved workflows continue to resolve their node type.

The integration uses @playrunner/integration-sdk for config field layout and host-provided UI primitives. It uses the Code2 icon from lucide-react, so it does not need a packaged image asset.

The package declares its code ID plus the . frontend and ./api surfaces in its own manifest, and each entrypoint default-exports its contribution. Frontend and API builds discover those surfaces from installed direct production dependencies and generate static imports; no shared registry edit is required.

API

The API entrypoint default-exports javascriptApiContribution, containing the empty javascriptRouter and its /api/javascript mount path. The current JavaScript node has no backend endpoints, but JavaScript still exposes an API entrypoint so all integrations have the same frontend/API shape.

Orchestrator

There is currently no JavaScript Orchestrator contribution or host-managed execution path. Installing the package makes the node configuration available at build time; it does not make JavaScript nodes executable.