Skip to main content

smallcat logo

smallcat

A small, modular data catalog.

PyPI Python versions CI coverage license downloads docs

Install

pip install smallcat

Quickstart

Create Catalog

Local catalogs can be kept in YAML files.

entries:
    foo:
        file_format: csv
        connection:
            conn_type: fs
            extra:
                base_path: /tmp/smallcat-example/
        location: foo.csv
        load_options:
            header: true
    bar:
        file_format: parquet
        connection:
            conn_type: google_cloud_platform
            extra:
                bucket: my-bucket
        location: bar.csv
        save_options:
            partition_by:
                - year
                - month

Standalone

from smallcat import Catalog

catalog = Catalog.from_path("catalog.yaml")
catalog.save_pandas("foo", df)
df2 = catalog.load_pandas("foo")

Filter on load

load_pandas (and the lower-level Arrow loaders) accept optional where and columns arguments to push filters and projections down to DuckDB/Arrow when reading:

df = catalog.load_pandas(
    "bar",
    where="event_date >= '2024-01-01'",
    columns=["event_date", "user_id"],
)

With Airflow

from smallcat import Catalog

catalog = Catalog.from_airflow_variable("example_catalog")
df = catalog.load_pandas("bar")

Docs

Read more at the official docs.

Metadata

Release files for smallcat 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for smallcat 0.5.1
File Size Uploaded Provenance Actions
smallcat-0.5.1.tar.gz 21.3 kB Without provenance Details for smallcat-0.5.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for smallcat 0.5.1
File Interpreter ABI Platform Actions
smallcat-0.5.1-py3-none-any.whl Python 3 none any Details for smallcat-0.5.1-py3-none-any.whl

Total release size: 47.0 kB

Release files / smallcat-0.5.1.tar.gz

Download URL smallcat-0.5.1.tar.gz
Size 21.3 kB
Tags Source
SHA-256 checksum
How to use checksums
3144e698e49ab86c6489eae29f781ebca32d38b29f6f793142064e7d7bf2cfb5
BLAKE2b-256 checksum
How to use checksums
da56670e75d66589f9a370b4b60e273762b1cb8937c585e8dd7429716ab02ff6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / smallcat-0.5.1-py3-none-any.whl

Download URL smallcat-0.5.1-py3-none-any.whl
Size 25.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d3f79ac190ab0eca3e59be78a14f78b85ed485ac8a8558ee18ce96dd48ac0eac
BLAKE2b-256 checksum
How to use checksums
4aa4b495203563a0bb3949f1100385ff1fbb1637917c65be6566d8f0e5837a76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for smallcat 0.5.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page