Skip to content

eftoolkit

A streamlined Python toolkit for everyday programming tasks and utilities.

Overview

eftoolkit provides reusable utilities for common data engineering tasks:

  • DuckDB Wrapper - Query data with SQL, seamlessly integrated with S3
  • S3 Operations - Read/write parquet files to S3-compatible storage
  • Google Sheets - Batch operations with automatic retry and local preview mode
  • Configuration - JSON/JSONC loading and logging setup

Key Features

  • Unified API - Consistent patterns across all modules
  • S3 Integration - DuckDB and S3FileSystem work together seamlessly
  • Batch Operations - Google Sheets operations are queued and flushed efficiently
  • Local Preview - Test Google Sheets workflows without API credentials
  • Type Hints - Full type annotations for IDE support

Quick Example

from eftoolkit import DuckDB, S3FileSystem, Spreadsheet

# Query with DuckDB
db = DuckDB()
df = db.query("SELECT 1 as id, 'Hello' as message")

# Write to S3
s3 = S3FileSystem(access_key_id='...', secret_access_key='...', region='us-east-1')
s3.write_df_to_parquet(df, 's3://my-bucket/data.parquet')

# Write to Google Sheets (local preview - no credentials needed!)
ss = Spreadsheet(local_preview=True, spreadsheet_name='Demo')
with ss.worksheet('Sheet1') as ws:
    ws.write_dataframe(df)
    ws.format_range('A1:B1', {'textFormat': {'bold': True}})

Getting Started

Ready to get started? Check out the Installation guide and Quickstart tutorial.