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 RoutePorts:
input- Incoming messageout_<route>- Dynamic output per routeout_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 messageoutput- 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 ──▶ 3Ports:
input- Array inputoutput- Individual elementscomplete- Emitted when done
Use Cases:
- Process array items individually
- Batch processing
- Parallel work distribution
Async
Execute downstream non-blocking.
Ports:
input- Trigger async executionoutput- Passes through (async)
Use Cases:
- Fire-and-forget operations
- Parallel branches
- Avoid blocking
Signal
Manual trigger with configurable data.
Ports:
settings- Configure trigger datacontrol- Button to triggeroutput- Emits configured data
Use Cases:
- Manual flow triggers
- Testing
- One-time operations
Ticker
Periodic message emission.
Ports:
settings- Configure intervalcontrol- Start/Stopoutput- 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 delayoutput- Delayed message
Settings:
duration- Delay time
Use Cases:
- Rate limiting
- Retry backoff
- Timing control
Debug
Log messages for debugging.
Ports:
input- Message to logoutput- 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 configurationcontrol- Start/Stop serverrequest- Incoming requestsresponse- Send responseserror- Error handling
Settings:
listenAddress- Port to listen onreadTimeout- Request timeoutwriteTimeout- 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 configurationrequest- Request to sendresponse- Successful responseerror- Failed requests
Settings:
timeout- Request timeoutfollowRedirects- Redirect handlingretries- 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
| Module | Components | Use Cases |
|---|---|---|
| common-module | 8 | Core flow logic |
| http-module | 2 | HTTP APIs |
| postgresql-module | 4 | Database ops |
| redis-module | 3 | Caching |
| kafka-module | 2 | Event streaming |
| slack-module | 2 | Notifications |
Community Modules
Find community-contributed modules:
- Browse the module catalog
- Filter by "Community"
- Check ratings and reviews
- Review documentation
Contributing Modules
Create and share your own modules:
- Build using the SDK
- Publish to registry
- Submit to catalog
- Share with community
See the Developer Guide for creating modules.
Next Steps
- Installing Modules - Install modules
- Module Configuration - Configure modules
- Creating Your First Flow - Build flows