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.0a47.tar.gz (339.2 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.0a47-cp314-cp314t-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.14tWindows x86-64

cocoindex-1.0.0a47-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.0a47-cp314-cp314t-manylinux_2_28_aarch64.whl (6.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

cocoindex-1.0.0a47-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.0a47-cp311-abi3-manylinux_2_28_aarch64.whl (6.4 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

cocoindex-1.0.0a47-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.0a47.tar.gz.

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a47.tar.gz
Algorithm Hash digest
SHA256 6568c9185e90f314901f7be8153b304c0bb4d471585e9ae75be7721d3a54b4a9
MD5 b0a5375910fe1e85c50f7378d2242fbd
BLAKE2b-256 7f779007655b838026c6cd68c7288abf3361df1f0467879c1038f03f0fb99bf1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 b3560ced3d5ab0371205f83f821d355de8a9dc9b9833a17e698b2d9c09d183c2
MD5 caa30531da60c7d2d83e93c4845e57a7
BLAKE2b-256 ca6a6ccb3b5cf655a7865575084b39d1ca877bed9015dbbc92bcef02a7b2cfda

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ca997ffbf8df768209d1d889beff2126316c5ede0172513debe857d63508beb0
MD5 eabe62d212fb7c586b7d6752ea3477d5
BLAKE2b-256 5814e0216c9d628091b0dd7f116aaeb1854cb5b72f85234e5a7c1ea43d7ca66a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 49d162443a062f049cfaa0b49f2d9bad5934e38d1fb6ad46271ac2cfa9da5b73
MD5 473cfac1e85e59a70e8a93d83fd8a4cb
BLAKE2b-256 a5c419d7c6f16e0a59175dfb7e423ffc5590ac8738d54af07b4d547d8ba6d4bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 350198be266ebe615f3c4b49f851cd6bacb38b2121fe4c7e254466a63a5a778c
MD5 9cd152c2e05d533d56799aa3c5c18576
BLAKE2b-256 ee3921e9cbd8daf11e75cbf5ca3f18ace29a1607aecdcfb0115712ace1c156c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 5f4e76bf29bb152d724e07c3b132ee9d8fccd8cc4da22b591d4099ea2af98d43
MD5 a91f89f909276bf7d2e6531ee65db3cf
BLAKE2b-256 f3f272a0006af49a7bdcb3663a33c9dda6c100d29475b461a4ca16b1d70bf2d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 32d1873899513e5b3e9eb3eb23520e9905d06117f2ab4298e3c5441656dfcfa8
MD5 c3b4db1abdafdef5d1dfd1b76e4e7977
BLAKE2b-256 0948cf779822c49dda59642c9f473e794d3cd71b75001624020361082153a010

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 365a4d2bf211184866e6002d00dcf667194471b35024fc3b763f645e0c1f6eab
MD5 4e1ee6317ad48c0f9279544e36853fcf
BLAKE2b-256 aaba817520dd330fbd88bee4e4365c0ddcdcd13d9649375a6d09ec5de5572704

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d2cd1565ef2848f3584e488002f39a2f1e8d5677e8e361ee1571f175d503611a
MD5 0ef9207c915e2aa61f7a6faaff65122c
BLAKE2b-256 cbcb2727be307476684d87793c4f23558c551a4570435743b971fd8ed562b077

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a47-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 603c4a7a79ff99173e07eb3d83d9926a8a6a908e222100766f5a4531c256d12c
MD5 c15cdc48c08debc3af76fb05e14547bd
BLAKE2b-256 abe1a6589b703ec264aab46e437a0291a8f7849cd8e8dd48a74b6998fb896702

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