Integrations
rivers connects to the tools around your pipelines. Each integration has a guide and an API reference. Install the extra in the last column to use it.
Ingestion
| Integration |
What it does |
Extra |
| Airbyte |
Runs Airbyte connection syncs as multi-assets, one output per stream. |
— |
| dlt |
Loads dlt sources as multi-assets, one output per resource. |
rivers[dlt] |
| Sling |
Runs Sling replications as multi-assets, one output per stream. |
rivers[sling] |
| Integration |
What it does |
Extra |
| dbt |
Makes dbt models, seeds, and snapshots into assets, and runs dbt to build them. |
rivers[dbt] |
| Databricks |
Runs Databricks jobs as assets, one asset per job or one output per task. |
rivers[databricks] |
| DuckDB |
Shares DuckDB connections as resources and stores asset outputs in DuckDB. |
rivers[duckdb] |
| Integration |
What it does |
Extra |
| Delta Lake |
Stores asset outputs as Delta tables, with partitioned writes and MERGE. |
rivers[delta] |
| Iceberg |
Stores asset outputs as Iceberg tables, with upserts and schema evolution. |
rivers[iceberg] |
Validation
| Integration |
What it does |
Extra |
| dataframely |
Checks polars outputs against the dataframely schema in the return hint. |
rivers[dataframely] |
| pandera |
Checks frame outputs against the pandera schema in the return hint. |
rivers[pandera] |
Alerts and monitoring
| Integration |
What it does |
Extra |
| Datadog |
Sends events when assets or runs fail, and gives a client for your own metrics. |
rivers[datadog] |
| Slack |
Posts a message when assets or runs fail. |
rivers[slack] |