Skip to content

Module Guide

Dmitrii Karataev edited this page Feb 26, 2026 · 2 revisions

Module Guide

RocketRide Engine is a monorepo with modules organized under packages/, apps/, and nodes/. Each module can be built and tested independently using the ./builder CLI.

Core

Module Path Language Build Command Description
engine-core packages/server/engine-core C++ ./builder server:build Core library (apLib) -- async, crypto, file, json, memory, network, string, threading
engine-lib packages/server/engine-lib C++ ./builder server:build Engine library (engLib) -- pipeline orchestrator, node runtime

Client SDKs

Module Path Language Build Command Description
client-typescript packages/client-typescript TypeScript ./builder client-typescript:build TypeScript/JavaScript SDK, published as rocketride on npm
client-python packages/client-python Python ./builder client-python:build Python SDK, published as rocketride on PyPI
client-mcp packages/client-mcp TypeScript ./builder client-mcp:build MCP (Model Context Protocol) client

Applications

Module Path Language Build Command Description
engine apps/engine C++ ./builder server:build Main engine executable -- runs pipelines or starts the WebSocket service
chat-ui apps/chat-ui React/TS ./builder chat-ui:build Chat web interface for interacting with pipelines
dropper-ui apps/dropper-ui React/TS ./builder dropper-ui:build Drag-and-drop file ingestion web interface
vscode apps/vscode TypeScript ./builder vscode:build VSCode extension for pipeline development

For the UI apps, a dev server with hot reload is available:

./builder chat-ui:dev
./builder dropper-ui:dev

Pipeline & AI

Module Path Language Build Command Description
nodes nodes/ Python ./builder nodes:build 50+ pipeline nodes (LLMs, vector DBs, embeddings, parsers, etc.)
ai packages/ai TypeScript ./builder ai:build AI/ML module -- shared AI utilities and integrations

Tooling

Module Path Language Build Command Description
tika packages/tika Java ./builder tika:build Apache Tika 3.2.3 integration for document parsing
java packages/java Java (auto) JDK 17 and Maven 3.9.6 auto-download
vcpkg packages/vcpkg C++ (auto) C++ package manager auto-download
shared-ui packages/shared-ui React/TS ./builder shared-ui:build Shared React components used by chat-ui and dropper-ui

Common Build Commands

./builder build                # Build everything (parallel)
./builder build --sequential   # Build everything (sequential)
./builder test                 # Run all tests
./builder clean                # Clean all build artifacts

# Module-specific
./builder <module>:build       # Build a specific module
./builder <module>:test        # Test a specific module
./builder <module>:clean       # Clean a specific module

# Node testing
./builder nodes:test           # Contract tests (mocked, no server)
./builder nodes:test-full      # Integration tests (requires running server)

Workspace Configuration

The monorepo uses pnpm workspaces defined in pnpm-workspace.yaml. All packages are linked locally during development. The root package.json defines shared devDependencies (ESLint, Prettier, TypeScript, etc.).

Next Steps

Clone this wiki locally