Data engineering tools to create data mash ups using Django
Project description
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6984ea1639c1f206d18c99f504af113a9abfebcac3157dff2b415d9c6dc2d1a
|
|
| MD5 |
d25609582288c62dd8d771cbb02fb6d5
|
|
| BLAKE2b-256 |
657f97ea3201fcc28c1613f5eef96db795fd08cdb1f9db96ccd78398e6d3fa81
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60b08e44d784e76ea67461e132cba901c66bfac96003f04f55f6925d557e7b2d
|
|
| MD5 |
d7cead9fdc2494cc480ad4ad579b9d5f
|
|
| BLAKE2b-256 |
cbb29dfeeceb372cc15b0e8b623c8d8d476643875b916fd7d3dbc6f161455ecf
|