Skip to main content

With CocoIndex, users declare the transformation, CocoIndex creates & maintains an index, and keeps the derived index up to date based on source update, with minimal computation and changes.

Project description

CocoIndex

Data transformation for AI

GitHub Documentation License PyPI version

PyPI Downloads CI release Link Check prek Discord

cocoindex-io%2Fcocoindex | Trendshift

Ultra performant data transformation framework for AI, with core engine written in Rust. Support incremental processing and data lineage out-of-box. Exceptional developer velocity. Production-ready at day 0.

⭐ Drop a star to help us grow!


CocoIndex Transformation


CocoIndex makes it effortless to transform data with AI, and keep source data and target in sync. Whether you’re building a vector index, creating knowledge graphs for context engineering or performing any custom data transformations — goes beyond SQL.


CocoIndex Features


Exceptional velocity

Just declare transformation in dataflow with ~100 lines of python

# import
data['content'] = flow_builder.add_source(...)

# transform
data['out'] = data['content']
    .transform(...)
    .transform(...)

# collect data
collector.collect(...)

# export to db, vector db, graph db ...
collector.export(...)

CocoIndex follows the idea of Dataflow programming model. Each transformation creates a new field solely based on input fields, without hidden states and value mutation. All data before/after each transformation is observable, with lineage out of the box.

Particularly, developers don't explicitly mutate data by creating, updating and deleting. They just need to define transformation/formula for a set of source data.

Plug-and-Play Building Blocks

Native builtins for different source, targets and transformations. Standardize interface, make it 1-line code switch between different components - as easy as assembling building blocks.

CocoIndex Features

Data Freshness

CocoIndex keep source data and target in sync effortlessly.

Incremental Processing

It has out-of-box support for incremental indexing:

  • minimal recomputation on source or logic change.
  • (re-)processing necessary portions; reuse cache when possible

Quick Start

If you're new to CocoIndex, we recommend checking out

Setup

  1. Install CocoIndex Python library

Note: CocoIndex v1 is currently in preview (pre-release). Use the --pre flag with pip, or configure your package manager to allow pre-releases.

pip install -U --pre cocoindex
  1. Install Postgres if you don't have one. CocoIndex uses it for incremental processing.

  2. (Optional) Install Claude Code skill for enhanced development experience. Run these commands in Claude Code:

/plugin marketplace add cocoindex-io/cocoindex-claude
/plugin install cocoindex-skills@cocoindex

📖 Documentation

For detailed documentation, visit CocoIndex Documentation, including a Quickstart guide.

🤝 Contributing

We love contributions from our community ❤️. For details on contributing or running the project for development, check out our contributing guide.

👥 Community

Welcome with a huge coconut hug 🥥⋆。˚🤗. We are super excited for community contributions of all kinds - whether it's code improvements, documentation updates, issue reports, feature requests, and discussions in our Discord.

Join our community here:

Support us

We are constantly improving, and more features and examples are coming soon. If you love this project, please drop us a star ⭐ at GitHub repo GitHub to stay tuned and help us grow.

License

CocoIndex is Apache 2.0 licensed.

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

cocoindex-1.0.0a43.tar.gz (329.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cocoindex-1.0.0a43-cp314-cp314t-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.14tWindows x86-64

cocoindex-1.0.0a43-cp314-cp314t-manylinux_2_28_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

cocoindex-1.0.0a43-cp314-cp314t-manylinux_2_28_aarch64.whl (6.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

cocoindex-1.0.0a43-cp314-cp314t-macosx_11_0_arm64.whl (6.6 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

cocoindex-1.0.0a43-cp311-abi3-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.11+Windows x86-64

cocoindex-1.0.0a43-cp311-abi3-manylinux_2_28_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ x86-64

cocoindex-1.0.0a43-cp311-abi3-manylinux_2_28_aarch64.whl (6.4 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

cocoindex-1.0.0a43-cp311-abi3-macosx_11_0_arm64.whl (6.6 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

cocoindex-1.0.0a43-cp311-abi3-macosx_10_12_x86_64.whl (6.5 MB view details)

Uploaded CPython 3.11+macOS 10.12+ x86-64

File details

Details for the file cocoindex-1.0.0a43.tar.gz.

File metadata

  • Download URL: cocoindex-1.0.0a43.tar.gz
  • Upload date:
  • Size: 329.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for cocoindex-1.0.0a43.tar.gz
Algorithm Hash digest
SHA256 6569c91b6e01951d5d3419942ba5d0ef952ba89006f021ab25a28306d3400e55
MD5 3e7f1a657a23e5549a4952774e3d6bf9
BLAKE2b-256 2cae89036ba4b5890c76de18b118195f08f1000b77b428be243cdfb26f48cb62

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 4217047a9195508ac2c0af70ec46c8a2943ce60c95c4b449d0e1c06aec74979c
MD5 223fb80ca70e2336e93fa81ed0687ab0
BLAKE2b-256 4b8aab014c6a522173b6fecd6d0f4913bfbbdc369e3b35cc5bd2c81dd78ee946

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bb0c157e5ce8ac36b2708e63ac46ea6eb0dba79a1621d930411b9fe1c2570515
MD5 9b4fcada807b7d7cab6cef0fe76a3419
BLAKE2b-256 cf7805c08b2253b5f0be9082a8bf6d868326c0b96b6025f05b40ffa4e92276dd

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e4169191eebc33db66c35f280d1d970c1b8badb335f82a0a0c0951f6a464913a
MD5 ca81dbe0eff7d42cdc03efa9833c7003
BLAKE2b-256 e2f7ba86b961885a8ebdc1dfaf3aea73309708e606aaf8016bd55d52bbdbfdea

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 65541e78681716079f99b3212654280212a7ca972401dfbd6315b76fd314ddb6
MD5 6f009709a3bfc3e981028c44c173cea7
BLAKE2b-256 1ab06bf1fbf30126d50f772388746965ea5a00b4476b70d48571c11fa909c1b0

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp311-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 868a96f19e2ba629fac73a6131a682865df2f0f15f64eedb18f3f0bd403b1f4a
MD5 72d6412639c4272565639581c84f19a2
BLAKE2b-256 c80c05fcefdc56510c2cbecaf83efe9213d0a0d80720d60aea1895a70a02a6a0

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp311-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ba810b8ae47dd772ebd89fc3bdc1cc57a94630f38cc0d2dae0c1fb7966cef708
MD5 bc4aaacbea33c01fddb7c04f5e588963
BLAKE2b-256 4c65b5c3d95ef194cb6816d7c660ca7e163453f233fc2e67e54699a09beab466

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp311-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4c2a4335a904743a7371585fc8df0b1b1d8a9a4953c46cf63ced57e573928e0f
MD5 1c24217faed6d938761cf7a1caf2094a
BLAKE2b-256 df7ceda090462a6fc7354a777a082d5097103e453cc01bb21c18b5ead6e6a159

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0919ff6e788720973c999388e9d2ff718cc6d16e9daa478c36a151789cfd2705
MD5 f6e53af0a16e4fdd96810734d628066e
BLAKE2b-256 aa7f3008551d2c45b5e47c7c5ff02b784fe442cd2a14e9aeec27017a80a76842

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a43-cp311-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a43-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a9b91f3da9b8b42ee5dd6939d804e7bbf41b6ec8d91125bee2b0f00b61123e9c
MD5 05441a0b6da45529d1515356c94bb99a
BLAKE2b-256 4b8f14a2c53b4b84eb2f928261e88e0fb0a80d387c950a1f1604ddcecf30d428

See more details on using hashes here.

Supported by

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