Awesome
vscode-dbt-power-user
This open source extension makes VSCode seamlessly work with dbt™.
If you need help with setting up the extension, please check the documentation. For any issues or bugs, please contact us via chat or Slack.
Features:
Feature | Details |
---|---|
Auto-complete dbt™ code | Auto-fill model names, macros, sources and docs. Click on model names, macros, sources to go to definitions. |
Preview Query results and Analyze | Generate dbt™ model / query results. Export as CSV or analyze results by creating graphs, filters, groups |
Column lineage | Model lineage as well as column lineage |
Generate dbt™ Models | from source files or convert SQL to dbt™ Model (docs) |
Generate documentation | Generate model and column descriptions or write in the UI editor. Save formatted text in YAML files. |
Defer to prod | Build your model in development without building (by defering) your upstream models |
Click to run parent / child models and tests | Just click to do common dbt™ operations like running tests, parent / child models or previewing data. |
Compiled query preview and explanation | Get live preview of compiled query as your write code. Also, generate explanations for dbt™ code written previously (by somebody else) |
Project health check | Identify issues in your dbt™ project like columns not present, models not materialized |
SQL validator | Identify issues in SQL like typos in keywords, missing or extra parentheses, non-existent columns |
Big Query cost estimator | Estimate data that will be processed by dbt™ model in BigQuery |
Other features | dbt™ logs viewer (force tailing) |
Note: This extension is fully compatible with dev containers, code spaces and remote extension. See Visual Studio Code Remote - Containers and Visual Studio Code Remote - WSL. The extension is supported for dbt™ versions above 1.0.
Features
<a id="autocomplete">Autocomplete model, macro, source names and click to go to definition</a>
Auto-fill model names, macros, sources and docs. Click on model names, macros, sources to go to definitions. (docs)
<a id="querypreview">Preview query results and analyze</a>
Generate dbt™ model / query results. Export as CSV or analyze results by creating graphs, filters, groups. (docs)
<a id="lineage">Column lineage</a>
View model lineage as well as column lineage with components like models, seeds, sources, exposures and info like model types, tests, documentation, linkage types. (docs)
<a id="genmodel"> Generate dbt™ Models from source or SQL</a>
Generate dbt™ models from sources defined in YAML. You can also convert existing SQL to a dbt™ model where references get populated automatically. (docs)
<a id="gendoc"> Generate documentation</a>
Generate model and column descriptions automatically or write descriptions manually in the UI editor. Your descriptions are automatically formatted and saved in YAML files. (docs)
<a id="defertoprod">Defer to prod</a>
Defer building your upstream models when you make changes in development by referencing production models. Here's (more info) about the concept. This functionality can be used in dbt™ core with the extension. (docs)
<a id="clicktorun"> Click to run parent/child models and tests</a>
Just click to do common button operations like executing tests, building or running parent / child models. (docs)
<a id="queryexplanation"> Compiled query preview and explanation</a>
Get live preview of compiled query as your write code. Also, generate explanations for dbt™ code written previously (by somebody else). (docs)
<a id="healthcheck"> Project health check</a>
Identify issues in your dbt™ project like columns not present, models not materialized. (docs)
<a id="validateSQL"> SQL validator</a>
Validate SQL to identify issues like mistyped keywords, extra parentheses, columns no present in database (docs)
<a id="bqcost"> Big Query cost estimator</a>
Estimate data that will be processed by dbt™ model in BigQuery (docs)
<a id="otherfeatures"> Other features</a>
dbt™ logs view (force tailing)
Please check documentation for additional info. For any issues or bugs, please contact us via chat or Slack.