Skip to main content

Data engineering tools to create data mash ups using Django

Project description

datagrowth workflow PyPI pyversions GPLv3 license

DATAGROWTH

Data Growth is a lightweight Extract, Transform and Load (ETL) library, that helps to connect your software to external data sources.

These data sources can be API's, terminal commands or LLM's. Datagrowth is the bridge between all that data and your application logic. Because data sources and their outputs can be described uniformly in Python, using Datagrowth prevents vendor lock-in to specific data sources. It can also save costs, because it will re-use data sources like LLM responses whenever possible.

Datagrowth is mainly used within Django projects, where the data can be stored inside Django models. Use the different processors to extract and transform data, before loading it into your models exactly how your project needs. When using Django Restframework you can also share the loaded data easily over a REST API to other devices or services. Datagrowth also provides classes to set this up quickly.

Installation

You can install Datagrowth by running

pip install datagrowth

Getting started

Currently there are two major use cases. The Resources provide a way to uniformly gather data from very different sources. Configurations are a way to store and transfer key-value pairs, which your code can use to act on different contexts.

Follow these guides to get an idea how you can use Datagrowth:

Running the tests

There is a Django mock project inside the tests directory of the repository. In it are a lot of tests to demonstrate how Datagrowth and Django can work together, as well as to assure that everything functions as designed.

Apart from the Django tests there is also a pytest suite, which checks lower level Datagrowth functionality. In the future it will be feasible to use Datagrowth without Django in smaller prototype projects.

You can run all tests by running this inside the repo root:

invoke test.run

Alternatively you can execute the tests against multiple Python/Django/database versions by running:

tox

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datagrowth-0.21.2.tar.gz (99.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datagrowth-0.21.2-py3-none-any.whl (121.9 kB view details)

Uploaded Python 3

File details

Details for the file datagrowth-0.21.2.tar.gz.

File metadata

  • Download URL: datagrowth-0.21.2.tar.gz
  • Upload date:
  • Size: 99.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for datagrowth-0.21.2.tar.gz
Algorithm Hash digest
SHA256 b6984ea1639c1f206d18c99f504af113a9abfebcac3157dff2b415d9c6dc2d1a
MD5 d25609582288c62dd8d771cbb02fb6d5
BLAKE2b-256 657f97ea3201fcc28c1613f5eef96db795fd08cdb1f9db96ccd78398e6d3fa81

See more details on using hashes here.

File details

Details for the file datagrowth-0.21.2-py3-none-any.whl.

File metadata

  • Download URL: datagrowth-0.21.2-py3-none-any.whl
  • Upload date:
  • Size: 121.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for datagrowth-0.21.2-py3-none-any.whl
Algorithm Hash digest
SHA256 60b08e44d784e76ea67461e132cba901c66bfac96003f04f55f6925d557e7b2d
MD5 d7cead9fdc2494cc480ad4ad579b9d5f
BLAKE2b-256 cbb29dfeeceb372cc15b0e8b623c8d8d476643875b916fd7d3dbc6f161455ecf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page