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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

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

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

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

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a37.tar.gz
Algorithm Hash digest
SHA256 056c11e2b65024489f3a18823fb3d7f8387e8054ea1005daed33923b1f7763ad
MD5 75f8a424ee983c1b3cd0c854f075b102
BLAKE2b-256 ac6aa587db56f79a416c5c3b912e4471cdbaa25e502ad91768659ac9794c9c04

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 80a4d688727dbc5fdccf2d4ac64e81e6348b69a76bd9148799861e0527809388
MD5 8ab893249d981f158619dac27e30cdbb
BLAKE2b-256 48ef8e0246c9ecb020e9533bfcc6847218c4b3636c5e8a8d01ee84dde4b264eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e8515651d51be4c3f64579a3efae74250363a39f805593b4a10acbe35e36bcfb
MD5 9d208d1c03f2883a751faa783e634b2f
BLAKE2b-256 f9526f874067a0491bf15b37ccda8739370586ef2ffeb600acf5196f5659efe0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9052cfcbf8dcd2542f4c592b5fd93a2abf23f21e13ac73762d22bd68fea9f533
MD5 e6f8a520c97b833c3400804f190200dd
BLAKE2b-256 4238377d679b9719b775d7669c1c08b299996c4c4913ba801e10486994f761fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae7beb4731ed3fe3562cc63e9359403645d368bd6557e9022bf8d07f184801fb
MD5 85ce7ca178622146bc82d2d8dee08faf
BLAKE2b-256 5637a6742f0b396d0b392e924cb993bfe484bba589622a0e5b75d0a2413dce40

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 f0ee064dbaa38f5713a9fec947d0ba4121aa81ea666fe1f426b91e1663f402e9
MD5 8ca65236c1b038f27bd8325e6ebb3d86
BLAKE2b-256 4e9f2cd85e3ccc7d4582f4e4835a088fc4f9834e32eecc5c2c819fb863edb44d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 174714f87ecec69e73cf5893970299803603636ea9c6a43d74682bc5e8dd015b
MD5 3bae1776b2644fc2497e32a685d6b67c
BLAKE2b-256 0d6de14c46d1e92475604064e9db8401c61a536fa09132efa4d0cb4ecb7ef186

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2f2d996feceb73e12ba820e887b795fcc287fb94be995d6a4f3aca3021d1451a
MD5 06f569ec83a9c1e22a679257801db362
BLAKE2b-256 a66566f8fd01239bcc281835fbba267d0fd8e79da1a121ea1fed7092d2c4dfc3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 adf8ad986fcedd25374c27db032fef4d3f1e882bbc74ebbb99b9e317835f8856
MD5 8a9bed5d17ad30f9ab85e28dd21c2427
BLAKE2b-256 261caa8493092ddca037b453c1bd89e5757e4c81f852042d79d94224b84606c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a37-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dd7e9203ae65d164cca7ddbdd38bf9383c1a4c36b0b51062a7c64dc88618892a
MD5 3d86ea347a70c6610a79a0c1871c2efe
BLAKE2b-256 e7b8b1f20eae25baf97d9c8e72509da3501f4e0f54c570e25cf4df80c7e8e02a

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