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.0a34.tar.gz (291.4 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.0a34-cp314-cp314t-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.14tWindows x86-64

cocoindex-1.0.0a34-cp314-cp314t-manylinux_2_28_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

cocoindex-1.0.0a34-cp314-cp314t-manylinux_2_28_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

cocoindex-1.0.0a34-cp314-cp314t-macosx_11_0_arm64.whl (6.4 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

cocoindex-1.0.0a34-cp311-abi3-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.11+Windows x86-64

cocoindex-1.0.0a34-cp311-abi3-manylinux_2_28_x86_64.whl (6.4 MB view details)

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

cocoindex-1.0.0a34-cp311-abi3-manylinux_2_28_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

cocoindex-1.0.0a34-cp311-abi3-macosx_11_0_arm64.whl (6.4 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

cocoindex-1.0.0a34-cp311-abi3-macosx_10_12_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.11+macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a34.tar.gz
Algorithm Hash digest
SHA256 96600553d3114268729556afbb15837e3d269810cc27f709eaa7ca1db41568fa
MD5 7a0623542189a54a045101420490f298
BLAKE2b-256 d8b1a39582ed1c2a6877025ada1fd045fe69157cb5f578c9dee5bbf5d942599f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 ee6be15ab4186ac3e0d9bbbf1d002a0a3acf2e841e3d8dc8eead92f9f989e39d
MD5 bfa27ae7e67d6847bd9a7c5879d5b198
BLAKE2b-256 a29d1d197273b9d20a57d9ad85868d5470fca45fe850cbe5e7a7960fdced7ab1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7cb93e67298af81f2e8cf04018d588bff5b1464fae3fde60ecdb1b6901769329
MD5 3cc9af4f65c1bc8423516b52407cef77
BLAKE2b-256 40751a75d231c2335f6d37c7f8f9f9a7c856a3fb6bc1997fa2fb034d22033ceb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 592d8f01e57ddfde96c7fba5cc30eb3377afe33e639d5fb95e996fde18435c03
MD5 520b56ad4c30a3d3e98e875a062d843d
BLAKE2b-256 8a7e4e4f131608ad8264e60c0f99a4cb9c845f22b10cfecd94e65978f32d2b55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 026878e698acdd6748cb31444906ead852d3f0d052bf15e5907b8b532a6bfa70
MD5 ffae2d6cd19eb6cd01fd421bff34f768
BLAKE2b-256 c7ec3aa32e6afa264ab1f4df51c5dcf18d2f5bcb1b50512a9e4f5c0422a67f07

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 7d3deee092bbaa9298fbdb7c6d184311e2cdbc009a62f8b8be171a99ba3b7dc5
MD5 ac0a7a65e1a21049942e573734a016ec
BLAKE2b-256 a31b5ece3b76b8d8e7d99ffa93a70a1880aafbe5555080fe7c77891e8672d832

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 399711fbc42c03de67f00b301914cac8214ec8070eac1eaf9d92c43f9c0bd52e
MD5 0f5fb65a139442856d1a762a0bfdc03b
BLAKE2b-256 bee5582a50cef22f5b331141682a8606ded6d8cc8f9487250d6dafe3569b3b7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9da7dac671a6d7e2c36fae523236e360406e8710819b59883e2c92e819816445
MD5 d2fb1dab55563bf33058e6f350a5672f
BLAKE2b-256 9c38c78ae7fa8e9dc803bee97c4fced05b40c98e0247f7eda35250d1ca5aa936

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bbbce15ce6d1aff7fa48312a4119946bd3587467acdc29b2930b6e6ed8d65cd9
MD5 7c017a53d5f7ed73e79c3d0903d9f044
BLAKE2b-256 135540a313fee3d2f97ed92376cea8852f34be22ad9853868303c45561498164

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a34-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f92014897fdb04a02b64b9980a9ae970995be0100d272e50c19aaff4a9e75145
MD5 7df44a68b76d4760a96011f5824e3256
BLAKE2b-256 033cbaf1f6dd2085ab51666226f4de9f63da07b34c187a5f8bcd7c18ca306fbf

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