This page provides instructions for installing SQLMesh on your computer.
It is recommended, but not required, that you use a python virtual environment with SQLMesh.
First, create the virtual environment:
python -m venv .venvThen activate it:
source .venv/bin/activateInstall the core SQLMesh library with pip:
pip install sqlmeshSome SQLMesh functionality requires additional Python libraries, which are bundled with SQLMesh via "extras".
In your pip command, specify the extra's name in brackets to automatically install the additional libraries. For example, you install the SQLMesh Github CI/CD bot extras with pip install "sqlmesh[github]".
There are two types of extras.
Some extras add features, like the SQLMesh VSCode extension or Github CI/CD bot:
??? info "Feature extras commands"
| Feature | pip command |
| ------------------- | ------------------------------- |
| VSCode extension | pip install "sqlmesh[lsp]" |
| Github CI/CD bot | pip install "sqlmesh[github]" |
| dbt projects | pip install "sqlmesh[dbt]" |
| dlt projects | pip install "sqlmesh[dlt]" |
| Slack notifications | pip install "sqlmesh[slack]" |
| Development setup | pip install "sqlmesh[dev]" |
| Browser UI | pip install "sqlmesh[web]" |
| LLM SQL prompt | pip install "sqlmesh[llm]" |
Other extras are required to use specific SQL engines, like Bigquery or Postgres:
??? info "SQL engine extras commands"
| SQL engine | pip command |
| ------------- | ------------------------------------ |
| Athena | pip install "sqlmesh[athena]" |
| Azure SQL | pip install "sqlmesh[azuresql]" |
| Bigquery | pip install "sqlmesh[bigquery]" |
| ClickHouse | pip install "sqlmesh[clickhouse]" |
| Databricks | pip install "sqlmesh[databricks]" |
| GCP Postgres | pip install "sqlmesh[gcppostgres]" |
| MS SQL Server | pip install "sqlmesh[mssql]" |
| MySQL | pip install "sqlmesh[mysql]" |
| Postgres | pip install "sqlmesh[postgres]" |
| Redshift | pip install "sqlmesh[redshift]" |
| RisingWave | pip install "sqlmesh[risingwave]" |
| Snowflake | pip install "sqlmesh[snowflake]" |
| Trino | pip install "sqlmesh[trino]" |
Multiple extras can be installed at once, as in pip install "sqlmesh[github,slack]".
Now that you've installed SQLMesh, it's time to get started with the SQLMesh example project.
SQLMesh has three user interfaces - choose one for the example project and jump right in:
Have an existing dbt project you want to run? Install the dbt extra and check out SQLMesh's dbt adapter.