Skip to content

Available Modules

This guide covers the official TinySystems modules and their components.

Common Module

The foundation module with essential components for any flow.

Components

Router

Conditional message routing based on expressions.

     ┌──▶ Route A (condition matches)
Input ──┤
     └──▶ Default Route

Ports:

  • input - Incoming message
  • out_<route> - Dynamic output per route
  • out_default - Default when no match

Use Cases:

  • Branch by message type
  • Filter by conditions
  • Error routing

Modify

Transform message data using expressions.

Ports:

  • input - Incoming message
  • output - Transformed message

Use Cases:

  • Reshape data structures
  • Add/remove fields
  • Calculate values

Split

Iterate over arrays, emitting each element.

[1, 2, 3] ──▶ Split ──▶ 1 ──▶ 2 ──▶ 3

Ports:

  • input - Array input
  • output - Individual elements
  • complete - Emitted when done

Use Cases:

  • Process array items individually
  • Batch processing
  • Parallel work distribution

Async

Execute downstream non-blocking.

Ports:

  • input - Trigger async execution
  • output - Passes through (async)

Use Cases:

  • Fire-and-forget operations
  • Parallel branches
  • Avoid blocking

Signal

Manual trigger with configurable data.

Ports:

  • settings - Configure trigger data
  • control - Button to trigger
  • output - Emits configured data

Use Cases:

  • Manual flow triggers
  • Testing
  • One-time operations

Ticker

Periodic message emission.

Ports:

  • settings - Configure interval
  • control - Start/Stop
  • output - Periodic message

Settings:

  • interval - Time between ticks (e.g., "5s", "1m")
  • immediate - Emit on start

Use Cases:

  • Scheduled tasks
  • Polling
  • Heartbeats

Delay

Pause execution for a duration.

Ports:

  • input - Message to delay
  • output - Delayed message

Settings:

  • duration - Delay time

Use Cases:

  • Rate limiting
  • Retry backoff
  • Timing control

Debug

Log messages for debugging.

Ports:

  • input - Message to log
  • output - Pass-through (optional)

Use Cases:

  • Inspect data flow
  • Development debugging
  • Audit logging

HTTP Module

HTTP server and client components.

Server Component

Full-featured HTTP server with routing.

Ports:

  • settings - Server configuration
  • control - Start/Stop server
  • request - Incoming requests
  • response - Send responses
  • error - Error handling

Settings:

  • listenAddress - Port to listen on
  • readTimeout - Request timeout
  • writeTimeout - Response timeout

Features:

  • Multiple route patterns
  • Request/response handling
  • Automatic TLS via Ingress
  • Load balancing across replicas

Use Cases:

  • Webhook endpoints
  • REST APIs
  • HTTP triggers

Client Component

HTTP request sender.

Ports:

  • settings - Client configuration
  • request - Request to send
  • response - Successful response
  • error - Failed requests

Settings:

  • timeout - Request timeout
  • followRedirects - Redirect handling
  • retries - Retry count

Features:

  • All HTTP methods
  • Header configuration
  • Body handling
  • Error handling

Use Cases:

  • Call external APIs
  • Webhook delivery
  • Service integration

Database Modules

PostgreSQL Module

PostgreSQL database connectivity.

Components:

  • Query - Execute SQL queries
  • Insert - Insert records
  • Update - Update records
  • Transaction - Transaction support

Redis Module

Redis cache and data store.

Components:

  • Get - Retrieve values
  • Set - Store values
  • Pub/Sub - Publish/Subscribe

Messaging Modules

Kafka Module

Apache Kafka integration.

Components:

  • Producer - Send messages
  • Consumer - Receive messages

RabbitMQ Module

RabbitMQ message queue.

Components:

  • Publisher - Publish messages
  • Subscriber - Consume messages

Integration Modules

Slack Module

Slack workspace integration.

Components:

  • Send Message - Post to channels
  • Webhook - Receive Slack events

Email Module

Email sending capabilities.

Components:

  • SMTP Sender - Send emails
  • Template - Email templating

AWS Module

AWS service integrations.

Components:

  • S3 - Object storage
  • SQS - Queue service
  • Lambda - Function triggers
  • DynamoDB - Database

Google Cloud Module

GCP service integrations.

Components:

  • Cloud Storage - Object storage
  • Pub/Sub - Messaging
  • BigQuery - Analytics

Utility Modules

Transform Module

Advanced data transformation.

Components:

  • JSON Parser - Parse JSON strings
  • XML Parser - Parse XML
  • CSV Parser - Parse CSV data
  • Template - Template rendering

Crypto Module

Cryptographic operations.

Components:

  • Hash - Generate hashes
  • Encrypt/Decrypt - Encryption
  • Sign/Verify - Signatures
  • JWT - Token handling

Module Comparison

ModuleComponentsUse Cases
common-module8Core flow logic
http-module2HTTP APIs
postgresql-module4Database ops
redis-module3Caching
kafka-module2Event streaming
slack-module2Notifications

Community Modules

Find community-contributed modules:

  1. Browse the module catalog
  2. Filter by "Community"
  3. Check ratings and reviews
  4. Review documentation

Contributing Modules

Create and share your own modules:

  1. Build using the SDK
  2. Publish to registry
  3. Submit to catalog
  4. Share with community

See the Developer Guide for creating modules.

Next Steps

Build flow-based applications on Kubernetes