Skip to main content

A handy CLI tool to ingest GoogleSheets into your database without writing a single line of code

Project description

PyPI version

python Code style: black Checked with mypy Imports: isort

codecov pre-commit.ci status Sheetwork Build Maintainability

Discord Downloads

sheetwork 💩🤦

What is sheetwork?

sheetwork is a handy open-source CLI-tool that allows non-coders to ingest Google Spreadsheets directly into their databases with control over data types, renaming, basic data sanitisation etc.

It offers a "close to no code" workflow that can still live alongside your codebase as all configuration lives in text files and is easily version-controllable. This makes it an ideal tool for teams.

⚠️ warning sheetwork is still in its early inception (don't get fooled by the 1 in the version). Please do some testing before you end up using it in production, and feel free to report bugs.

compatibility:

  • Python: 3.6, 3.7, 3.8 OS: Mac OSX >10.14, Linux
  • So far all our unit tests work on Windows (tested in GitHub Actions) but no comprehensive testing has been done on this platform.
  • sheetwork currently only offers support for cloud database Snowflake. However, its design follows an adapter pattern (currently in the making) and can be extended to interact with most databases. Feel free to check how you can contribute to the project or reach out on Discord..

Why use sheetwork?

Getting google sheets into any database often requires writing custom Python code that interacts with the Google API. That's fine if you can write Python, but it may not always be an option. On top of that, if your workflow requires you to ingest a bunch of sheets you may find yourself writing the same boiler plate code over and over.

Sheetwork offers a way to bring some DRY practices, standardisation, and simplification to basic google sheet ingestion. It won't do a lot of transformations and doesn't have room for baking in much transformational logic because we believe this is best done by fully-fledged ETL open-source tools such as dbt.

🙋🏻‍♂️ Want to use sheetwork on other databases? Let's talk! (Make an issue, or ping me on Discord)

Installation & Documentation

Head over to the pretty documentation.

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

sheetwork-1.0.7.tar.gz (33.4 kB view hashes)

Uploaded Source

Built Distribution

sheetwork-1.0.7-py3-none-any.whl (40.7 kB view hashes)

Uploaded Python 3

Supported by

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