Skip to content

Installation

This guide covers how to install QuickETL and its optional dependencies.

Basic Installation

Install QuickETL with the default backends (DuckDB and Polars):

pip install quicketl
uv pip install quicketl
pipx install quicketl

This gives you:

  • DuckDB backend (default)
  • Polars backend
  • CLI tools (quicketl run, quicketl init, etc.)
  • Python API

Verify Installation

Check that QuickETL is installed correctly:

quicketl --version

You should see output like:

quicketl version 0.1.0

Check available backends:

quicketl info --backends --check

Optional Dependencies

QuickETL uses optional dependencies to keep the base installation lightweight. Install only what you need.

Cloud Storage

For reading/writing to cloud storage:

pip install quicketl[aws]

Includes s3fs and boto3 for S3 access.

pip install quicketl[gcp]

Includes gcsfs and google-cloud-storage.

pip install quicketl[azure]

Includes adlfs and azure-storage-blob.

Additional Compute Backends

For distributed or alternative compute engines:

pip install quicketl[spark]

Requires Java 8+ to be installed.

pip install quicketl[datafusion]

Apache Arrow-native query engine.

pip install quicketl[pandas]

For pandas-based processing.

Cloud Data Warehouses

For connecting to cloud data warehouses:

# Snowflake
pip install quicketl[snowflake]

# Google BigQuery
pip install quicketl[bigquery]

# Trino
pip install quicketl[trino]

Databases

For connecting to relational databases:

# PostgreSQL
pip install quicketl[postgres]

# MySQL
pip install quicketl[mysql]

# ClickHouse
pip install quicketl[clickhouse]

Multiple Extras

Install multiple extras at once:

pip install quicketl[aws,spark,snowflake]

Everything

Install all optional dependencies:

pip install quicketl[all]

Large Installation

The [all] extra installs many dependencies including Spark. Only use this if you need everything.

Development Installation

For contributing to QuickETL:

# Clone the repository
git clone https://github.com/quicketl/quicketl.git
cd quicketl

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install in development mode
pip install -e ".[dev,docs]"

Troubleshooting

Import Errors

If you get import errors for optional backends:

ImportError: No module named 'ibis.backends.snowflake'

Install the required extra:

pip install quicketl[snowflake]

DuckDB Version Conflicts

If you have version conflicts with DuckDB:

pip install quicketl --upgrade

Spark Java Requirements

Spark requires Java 8 or later. Check your Java version:

java -version

Set JAVA_HOME if needed:

export JAVA_HOME=/path/to/java

Next Steps

Now that QuickETL is installed, continue to the Quick Start to create your first pipeline.