Portal Community

Core Packages (Always Required)

PackagePurpose
edge-stream-jsCore library — EdgeStream client, pipeline, hooks, subscriptions, transports
edge-stream-js-reactReact bindings — EdgeStreamProvider, useSubscription, useConnectionStatus

Domain Plugin Packages

PackageTopic NamespaceUse When
@edge-stream/workflow-eventsworkflow.*Building or consuming Flow Studio Observer Panel
@edge-stream/agent-messagesagent.*Building Octopus chat UI with streaming tokens
@edge-stream/ui-actionsui.*Server-driven UI rendering, form delivery, navigation
@edge-stream/system-eventssystem.*Platform health monitoring, deployment notifications
@edge-stream/ancpancp.*Agent Node Communication Protocol — low-level agent-to-node messaging

Observability Packages

PackagePurpose
@edge-stream/observability-hooks-jsExternal log hooks — Splunk, Datadog, Elasticsearch, New Relic, Sumo Logic, Graylog, WebMcp
@edge-stream/observability-reactReact monitor components — HooksMonitor, SubscribersMonitor, ActivityStreamMonitor
@edge-stream/observability-react-nativeReact Native monitor components for mobile dashboards
@edge-stream/observability-coreCore observability interfaces and LoggingService — shared by other observability packages

UI Packages

PackagePurpose
@edge-stream/app-pages-reactPre-built React page components for EdgeStream admin and DevTools apps
@edge-stream/app-ui-components-reactShared UI components (icons, badges, cards) used in EdgeStream apps
@edge-stream/app-themesCSS themes and design tokens for EdgeStream applications

Installation Pattern

# Core (always)
pnpm add edge-stream-js edge-stream-js-react

# Add domain plugins as needed
pnpm add @edge-stream/workflow-events
pnpm add @edge-stream/agent-messages

# Add observability for development
pnpm add -D @edge-stream/observability-hooks-js @edge-stream/observability-react

Per-Package Usage

// Pattern: import plugin, register hooks, subscribe
import { WorkflowEventPlugin } from '@edge-stream/workflow-events';

const plugin = new WorkflowEventPlugin();
plugin.createDefaultHooks().forEach(hook =>
  server.incomingPipeline.addHook(hook)
);

stream.subscribe('bas', 'workflow.*', workflowHandler);