How Prax Works

Prax is structured around a node-based execution engine that supports modular, composable workflows. Developers create flows, which are directed graphs composed of nodes. Each node performs a task and passes its result to the next node(s) in the chain.

Architecture Overview

  • Frontend: Built with React and TailwindCSS. Provides the drag-and-drop editor and chat interface for testing flows.

  • Backend: Built on Node.js and Express. Handles flow execution, state management, and API endpoints.

  • Database: Stores user data, flows, memory state, and environment configuration. Supports SQLite, Postgres, and external document stores.

  • Flow Engine: Executes node chains in order, manages input/output passing, handles errors and retries, and supports branching or parallelism.

  • API Layer: Exposes each flow as a REST endpoint. External applications can trigger flows via HTTP with custom payloads.

Flow Execution Modes

  • Interactive Mode: Test flows directly in the built-in chat interface

  • Programmatic Mode: Call flows via REST API

  • Trigger-based Mode (coming soon): Schedule flows or react to events like webhooks

Data Handling

  • Node outputs can be referenced by downstream nodes using variable substitution

  • Supports structured JSON inputs/outputs for complex transformations

  • Data can be logged, stored, or used in conditional branching logic

Last updated