opendbt


Nameopendbt JSON
Version 0.11.0 PyPI version JSON
download
home_pageNone
Summaryopendbt dbt-core with additional features
upload_time2024-12-13 14:53:10
maintainerNone
docs_urlNone
authorMemiiso Organization
requires_python>=3.8
licenseApache License 2.0
keywords dbt-core dbt
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![logo-badge](https://github.com/mac-s-g/github-help-wanted/blob/master/src/images/logo-full.png?raw=true)
[![License](http://img.shields.io/:license-apache%202.0-brightgreen.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)
![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)

# opendbt

This project adds new capabilities to dbt-core by dynamically modifying dbt's source code.
dbt is a popular solution for batch data processing in data analytics. While it operates on
an [open-core model](https://opencoreventures.com/blog/2023-07-open-core-is-misunderstood-business-model/), which can
sometimes limit the inclusion of community features in the open-source version. no worries opendbt is here to solve it.
opendbt offers a fully open-source package to address these concerns. **OpenDBT builds upon dbt-core, adding valuable
features without changing dbt-core code.**

`opendbt` unlocks many customization which are not in dbt-core, allowing end user to tailor dbt to his/her specific
needs and data workflows.

With `opendbt` you can go beyond the core functionalities of dbt. For example seamlessly integrating your customized
adapter and providing jinja context with further adapter/python methods.

# Features

- Customize Existing Adapters: Leverage OOP to create custom adapters that extends existing ones. With this user
  could provide more python features to jinja
- Execute Local Python Code: Use dbt Python models to run local Python code. For example, you could import data from web
  APIs directly within your dbt model.
- Granular Model-Level Orchestration with Airflow: Integrate Airflow for fine-grained control over model execution.
- Serve dbt Docs in Airflow UI: Create a custom page on the Airflow server that displays dbt documentation as an Airflow
  UI page.
- Customized dbt Docs: Replace the default dbt documentation page with your own custom index.html file.
- Run end to end ETL pipeline with dbt
  using [dlt](https://dlthub.com/) [integration](https://github.com/memiiso/opendbt/issues/40)
- Register dbt callbacks within a dbt project to trigger custom actions or alerts based on selected dbt events.

For detailed examples, see: [examples](docs/EXAMPLES.md).

![opendbt-airflow-ui.png](docs/assets/opendbt-airflow-ui.png)

## Installation

install version from github:

```shell
pip install https://github.com/memiiso/opendbt/archive/refs/tags/0.4.0.zip --upgrade --user
```

## **Your Contributions Matter**

The project completely open-source, using the Apache 2.0 license.
opendbt still is a young project and there are things to improve.
Please feel free to test it, give feedback, open feature requests or send pull requests.

### Contributors

<a href="https://github.com/memiiso/opendbt/graphs/contributors">
  <img src="https://contributors-img.web.app/image?repo=memiiso/opendbt" />
</a>

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "opendbt",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "dbt-core, dbt",
    "author": "Memiiso Organization",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/d6/41/ca07256c4cb9303a2a503ede6a91f1d158a5d11d14d3a144e04872fe7629/opendbt-0.11.0.tar.gz",
    "platform": null,
    "description": "![logo-badge](https://github.com/mac-s-g/github-help-wanted/blob/master/src/images/logo-full.png?raw=true)\n[![License](http://img.shields.io/:license-apache%202.0-brightgreen.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)\n![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)\n\n# opendbt\n\nThis project adds new capabilities to dbt-core by dynamically modifying dbt's source code.\ndbt is a popular solution for batch data processing in data analytics. While it operates on\nan [open-core model](https://opencoreventures.com/blog/2023-07-open-core-is-misunderstood-business-model/), which can\nsometimes limit the inclusion of community features in the open-source version. no worries opendbt is here to solve it.\nopendbt offers a fully open-source package to address these concerns. **OpenDBT builds upon dbt-core, adding valuable\nfeatures without changing dbt-core code.**\n\n`opendbt` unlocks many customization which are not in dbt-core, allowing end user to tailor dbt to his/her specific\nneeds and data workflows.\n\nWith `opendbt` you can go beyond the core functionalities of dbt. For example seamlessly integrating your customized\nadapter and providing jinja context with further adapter/python methods.\n\n# Features\n\n- Customize Existing Adapters: Leverage OOP to create custom adapters that extends existing ones. With this user\n  could provide more python features to jinja\n- Execute Local Python Code: Use dbt Python models to run local Python code. For example, you could import data from web\n  APIs directly within your dbt model.\n- Granular Model-Level Orchestration with Airflow: Integrate Airflow for fine-grained control over model execution.\n- Serve dbt Docs in Airflow UI: Create a custom page on the Airflow server that displays dbt documentation as an Airflow\n  UI page.\n- Customized dbt Docs: Replace the default dbt documentation page with your own custom index.html file.\n- Run end to end ETL pipeline with dbt\n  using [dlt](https://dlthub.com/) [integration](https://github.com/memiiso/opendbt/issues/40)\n- Register dbt callbacks within a dbt project to trigger custom actions or alerts based on selected dbt events.\n\nFor detailed examples, see: [examples](docs/EXAMPLES.md).\n\n![opendbt-airflow-ui.png](docs/assets/opendbt-airflow-ui.png)\n\n## Installation\n\ninstall version from github:\n\n```shell\npip install https://github.com/memiiso/opendbt/archive/refs/tags/0.4.0.zip --upgrade --user\n```\n\n## **Your Contributions Matter**\n\nThe project completely open-source, using the Apache 2.0 license.\nopendbt still is a young project and there are things to improve.\nPlease feel free to test it, give feedback, open feature requests or send pull requests.\n\n### Contributors\n\n<a href=\"https://github.com/memiiso/opendbt/graphs/contributors\">\n  <img src=\"https://contributors-img.web.app/image?repo=memiiso/opendbt\" />\n</a>\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "opendbt dbt-core with additional features",
    "version": "0.11.0",
    "project_urls": {
        "Documentation": "https://github.com/memiiso/opendbt",
        "Homepage": "https://github.com/memiiso/opendbt",
        "Repository": "https://github.com/memiiso/opendbt"
    },
    "split_keywords": [
        "dbt-core",
        " dbt"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "209be54b47f05553b82a1f1a67f81dade66e6fe5b5d369f11aab4e890adf7511",
                "md5": "180813a22ca74156cfda9546325116c4",
                "sha256": "16ad3af4cd4814b5d09c62bd5815ca784f29a1873a2a9b46db0d0721caaad05f"
            },
            "downloads": -1,
            "filename": "opendbt-0.11.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "180813a22ca74156cfda9546325116c4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 473086,
            "upload_time": "2024-12-13T14:53:07",
            "upload_time_iso_8601": "2024-12-13T14:53:07.815553Z",
            "url": "https://files.pythonhosted.org/packages/20/9b/e54b47f05553b82a1f1a67f81dade66e6fe5b5d369f11aab4e890adf7511/opendbt-0.11.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d641ca07256c4cb9303a2a503ede6a91f1d158a5d11d14d3a144e04872fe7629",
                "md5": "5c42ad76944d338e86c5f67040606734",
                "sha256": "799e0fad4596c79c8e52b21b17bd5b7bfbeb6149b0fa7cdae9577bba3cbfeb2b"
            },
            "downloads": -1,
            "filename": "opendbt-0.11.0.tar.gz",
            "has_sig": false,
            "md5_digest": "5c42ad76944d338e86c5f67040606734",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 1992908,
            "upload_time": "2024-12-13T14:53:10",
            "upload_time_iso_8601": "2024-12-13T14:53:10.112352Z",
            "url": "https://files.pythonhosted.org/packages/d6/41/ca07256c4cb9303a2a503ede6a91f1d158a5d11d14d3a144e04872fe7629/opendbt-0.11.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-13 14:53:10",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "memiiso",
    "github_project": "opendbt",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "opendbt"
}
        
Elapsed time: 0.42783s