Overview
Discover what makes StackStorm powerful
StackStorm is an event‑driven automation engine that unifies disparate services, infrastructure, and tooling into a single programmable platform. At its core it exposes an **event bus** where any system can publish or consume events, and a **workflow engine** that orchestrates actions in response to those events. Developers can author *rules* (simple if/then logic) or complex *workflows* composed of multiple actions, timeouts, and conditional branches—all expressed in YAML or Python. The platform is intentionally lightweight yet extensible, enabling rapid integration with CI/CD pipelines, monitoring stacks, cloud providers, and custom APIs.
Rule‑based event handling
Workflow orchestration
Rich action catalog
Observability
Overview
StackStorm is an event‑driven automation engine that unifies disparate services, infrastructure, and tooling into a single programmable platform. At its core it exposes an event bus where any system can publish or consume events, and a workflow engine that orchestrates actions in response to those events. Developers can author rules (simple if/then logic) or complex workflows composed of multiple actions, timeouts, and conditional branches—all expressed in YAML or Python. The platform is intentionally lightweight yet extensible, enabling rapid integration with CI/CD pipelines, monitoring stacks, cloud providers, and custom APIs.
Key Features
- Rule‑based event handling: Define rules that trigger actions when an event matches a pattern, supporting wildcard and regex matching.
- Workflow orchestration: Build directed acyclic graphs (DAGs) of actions with parallelism, retries, and failure handling.
- Rich action catalog: Thousands of pre‑built actions for cloud APIs, configuration management tools, messaging services, and custom scripts.
- Observability: Built‑in logging, metrics via Prometheus, and webhooks for external dashboards.
Technical Stack
- Language: Python 3.6+ (core engine, rule evaluation, action execution).
- Frameworks: Flask‑based REST API for the web UI and external clients; Celery workers handle asynchronous action execution.
- Databases: PostgreSQL for persistent storage of rules, workflows, and run history; Redis as the Celery broker and result backend.
- Messaging: Kafka or RabbitMQ (configurable) as the event bus, enabling high‑throughput, fault‑tolerant event distribution.
- Containerization: Official Docker images and Helm charts for Kubernetes deployments, facilitating immutable infrastructure patterns.
Core Capabilities
- RESTful API: Exposes CRUD endpoints for rules, workflows, actions, and triggers; supports programmatic management via SDKs.
- CLI:
st2command line tool for creating, testing, and running rules/workflows locally. - Webhooks: Incoming HTTP endpoints that automatically publish events to the bus, allowing integration with external services (e.g., GitHub PRs).
- Python SDK: Lets developers write custom actions or plugins in pure Python, leveraging the same execution context as native actions.
Deployment & Infrastructure
StackStorm is designed for self‑hosting on any Linux distribution that meets the system requirements. It can run as a single node for small teams or be scaled horizontally:
- High availability: Multiple API and worker nodes behind a load balancer; PostgreSQL can be replicated.
- Kubernetes: Helm charts deploy the API, worker, and broker as pods; persistent volumes store state.
- Bare metal or VMs: The installer script provisions all components, but advanced users can manually configure each service for fine‑tuned performance.
Integration & Extensibility
- Plugin system: Actions, triggers, and sensors are packaged as Python modules that can be installed via
pipor vendored directly into the repository. - Custom sensors: Poll external APIs at configurable intervals and emit events to the bus.
- Webhooks & HTTP triggers: Expose endpoints that automatically translate incoming requests into events, eliminating the need for manual polling.
- Extensible rule language: Supports Jinja2 templating and custom Python functions within rules for sophisticated decision logic.
Developer Experience
- Configuration: YAML‑based, declarative files for rules and workflows; environment variables control runtime behavior.
- Documentation: Comprehensive docs on the official site, including API reference, action authoring guides, and example workflows.
- Community: Active GitHub discussions, Slack channel, and a forum; frequent releases with backward‑compatible changes.
- Testing: Built‑in workflow simulator (
st2 run) and unit test harnesses for actions.
Use Cases
| Scenario | StackStorm Role |
|---|---|
| Incident response automation (e.g., auto‑scaling after a CPU spike) | Triggers monitor events → runs remediation workflow |
| Continuous delivery pipelines | Integrates with Jenkins/GitHub Actions; orchestrates build → test → deploy |
| Multi‑cloud provisioning | Sensors poll cloud APIs, rules trigger Terraform or Ansible playbooks |
| Compliance monitoring | Periodic checks via sensors; violations trigger alerts to Slack/JIRA |
Advantages
- Event‑driven architecture eliminates polling overhead and enables real‑time reactions.
- Python ecosystem: Leverages existing libraries for cloud, networking, and data processing.
- Open source & permissive licensing (Apache 2.0) allows unrestricted use in production.
- Modular deployment: Deploy only the components you need; scale workers independently.
- Extensive action library reduces boilerplate and speeds up development.
StackStorm empowers developers to build robust, event‑centric automation pipelines that integrate seamlessly with existing tooling while remaining fully controllable through code and APIs.
Open SourceReady to get started?
Join the community and start self-hosting StackStorm today
Related Apps in development-tools
Hoppscotch
Fast, lightweight API development tool
code-server
Self-hosted development-tools
AppFlowy
AI-powered workspace for notes, projects, and wikis
Appwrite
All-in-one backend platform for modern apps
PocketBase
Lightweight Go backend in a single file
Gitea
Fast, lightweight self-hosted Git platform
Weekly Views
Repository Health
Information
Explore More Apps
AzuraCast
Self‑hosted web radio station in minutes
This Week in Past
Show your yearly photo memories on a weekly slideshow
FlashPaper
Zero‑knowledge one‑time secret sharing, no database needed
OliveTin
Secure web interface for predefined shell commands
AnyCable
Low‑latency, reliable real‑time communication for any backend

YunoHost
Self-hosted server platform for easy app management
