--- id: cube-dbt version: "0.6.3" license: MIT license_treatment: permissive maintenance: aging --- # cube_dbt — dbt integration for Cube License: permissive · Maintenance: aging · Downloads: 106.0K/mo ## What it is and what it does cube_dbt is a bridge between dbt and Cube's semantic layer. It reads dbt manifest files (the compiled output of a dbt project) and exposes dbt models and their metadata—names, descriptions, columns, tags, data types—in a form that Cube can consume to build its data model. The package provides a Python API to load a manifest from a URL, filter models by path or tag, and convert individual models or columns into Cube dimension and measure specifications. Typically used in workflows where dbt defines the transformation layer and Cube defines the semantic/metrics layer on top. You load the manifest, filter to the models you want Cube to know about, and then call methods like `as_cube()` or `as_dimensions()` to generate Cube-compatible definitions. The package is lightweight—only PyYAML and orjson as dependencies—and supports Python 3.8 and later. Use it for: - Automatically generate Cube data models from existing dbt projects without manual schema definition. - Filter dbt models by path, tag, or name to expose only specific models to Cube's semantic layer. - Extract column metadata (names, descriptions, data types) from dbt to populate Cube dimensions and measures. - Preprocess large dbt manifests for performance optimization when working with complex projects. - Integrate dbt and Cube in CI/CD pipelines to keep semantic definitions in sync with dbt transformations. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Integrates dbt models with Cube's semantic layer by parsing dbt manifests and converting model definitions into Cube-compatible data model specifications. Yes, if you are actively using both dbt and Cube and want to automate the connection between them. The low install friction, permissive license, and clean API make it straightforward to adopt. However, the aging maintenance status (296 days since last release) means you should verify compatibility with your current dbt and Cube versions before relying on it in production, and be prepared for slower issue resolution if problems arise. ## Install pip install cube-dbt uv add cube-dbt poetry add cube-dbt ## Installing cube_dbt Before you install: Low install friction with only two runtime dependencies (PyYAML, orjson). Maintenance status is aging—last release was 296 days ago—so expect slower response to issues or feature requests. License in practice: MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions, making it safe for commercial and open-source projects. Quickstart: pip install cube_dbt from cube_dbt import Dbt manifest_url = 'https://bucket.s3.amazonaws.com/manifest.json' dbt = Dbt.from_url(manifest_url).filter(paths=['marts/'], tags=['cube']) print(dbt.models) print(dbt.model('name').as_cube()) Requires a dbt manifest.json file accessible via URL or local path; dbt project must be initialized and compiled before manifest is available. Verify before relying: - Whether the package handles large manifests efficiently beyond the preprocessing guidance in the docs. - Current state of the Cube.dev ecosystem and whether this integration remains actively used. - Compatibility with recent dbt versions and Cube versions not explicitly stated in the fact sheet. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: aging - Downloads: 106.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags dbt cube integration, dbt manifest parser, semantic layer dbt, cube data model from dbt, dbt to cube conversion, cube semantic layer setup, dbt model metadata extraction, dbt-integration, semantic-layer, data-modeling [View on SkillFed](https://skillfed.io/packages/cube-dbt) · [View on PyPI](https://pypi.org/project/cube-dbt/)