Work in Progress: This page is under development. Use the feedback button on the bottom right to help us improve it.

Interfaces

Laminar provides three interfaces for managing your stream processing pipelines. Each interface serves different use cases and user preferences.

Overview

InterfaceTypeUse Case
APIREST HTTP ServerProgrammatic access, integrations, automation
UIWeb ApplicationVisual management, dashboards, monitoring
LMNRCommand-line Toolkubectl-style resource management, CI/CD

Architecture

All three interfaces communicate with the same backend API and share the same data model:

User Interfaces
🖥️
Console UI
Web Application
⌨️
LMNR CLI
Command Line
🔧
Custom Apps
SDK / HTTP
Laminar REST API
:8000
/pipelines/jobs/profiles/tables/udfs
Laminar Engine
ControllerWorkersScheduler

Shared Data Model

All interfaces work with the same resources:

  • Pipelines - Stream processing jobs defined by SQL queries
  • Jobs - Individual executions of pipelines
  • Profiles - Connector configurations (Kafka, Iceberg, etc.)
  • Tables - Table definitions linked to profiles

Choosing an Interface

Use the API when:

  • Building custom integrations
  • Automating pipeline management
  • Creating custom dashboards
  • Programmatic access from other services

Use the UI when:

  • Getting started with Laminar
  • Monitoring dashboards and logs
  • Quick ad-hoc management tasks

Use LMNR CLI when:

  • Managing resources via YAML manifests
  • CI/CD pipeline integration
  • GitOps workflows
  • Bulk operations and scripting
  • kubectl-style workflow preference