├── .github └── workflows │ ├── ci.yaml │ └── publish.yaml ├── .gitignore ├── .python-version ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── examples ├── erc20_custom.py └── jup_swap.py ├── pyproject.toml ├── src └── cherry_etl │ ├── __init__.py │ ├── config.py │ ├── core.py │ ├── pipeline.py │ ├── steps │ ├── __init__.py │ ├── base58_encode.py │ ├── cast.py │ ├── cast_by_type.py │ ├── datafusion_step.py │ ├── evm_decode_events.py │ ├── hex_encode.py │ ├── polars_step.py │ ├── set_chain_id.py │ ├── svm_decode_instructions.py │ ├── svm_decode_logs.py │ ├── u256_to_binary.py │ └── util.py │ ├── utils.py │ └── writers │ ├── __init__.py │ ├── base.py │ ├── clickhouse.py │ ├── delta_lake.py │ ├── duckdb.py │ ├── iceberg.py │ ├── pyarrow_dataset.py │ └── writer.py └── tests └── test_steps.py /.github/workflows/ci.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/.github/workflows/ci.yaml -------------------------------------------------------------------------------- /.github/workflows/publish.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/.github/workflows/publish.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/.gitignore -------------------------------------------------------------------------------- /.python-version: -------------------------------------------------------------------------------- 1 | 3.13 2 | -------------------------------------------------------------------------------- /LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/LICENSE-APACHE -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/LICENSE-MIT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/README.md -------------------------------------------------------------------------------- /examples/erc20_custom.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/examples/erc20_custom.py -------------------------------------------------------------------------------- /examples/jup_swap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/examples/jup_swap.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/pyproject.toml -------------------------------------------------------------------------------- /src/cherry_etl/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/__init__.py -------------------------------------------------------------------------------- /src/cherry_etl/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/config.py -------------------------------------------------------------------------------- /src/cherry_etl/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/core.py -------------------------------------------------------------------------------- /src/cherry_etl/pipeline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/pipeline.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/__init__.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/base58_encode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/base58_encode.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/cast.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/cast.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/cast_by_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/cast_by_type.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/datafusion_step.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/datafusion_step.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/evm_decode_events.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/evm_decode_events.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/hex_encode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/hex_encode.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/polars_step.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/polars_step.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/set_chain_id.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/set_chain_id.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/svm_decode_instructions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/svm_decode_instructions.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/svm_decode_logs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/svm_decode_logs.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/u256_to_binary.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/u256_to_binary.py -------------------------------------------------------------------------------- /src/cherry_etl/steps/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/steps/util.py -------------------------------------------------------------------------------- /src/cherry_etl/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/utils.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/__init__.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/base.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/clickhouse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/clickhouse.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/delta_lake.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/delta_lake.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/duckdb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/duckdb.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/iceberg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/iceberg.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/pyarrow_dataset.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/pyarrow_dataset.py -------------------------------------------------------------------------------- /src/cherry_etl/writers/writer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/src/cherry_etl/writers/writer.py -------------------------------------------------------------------------------- /tests/test_steps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/steelcake/cherry/HEAD/tests/test_steps.py --------------------------------------------------------------------------------