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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

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

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

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

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a41.tar.gz
Algorithm Hash digest
SHA256 4f78f28f41b62a9f2841d7b8d2434bcce11fe1bf7597a6f87a2dea1c40c4dbc0
MD5 b4cd9b1b52bcf3c8c92b3b5e5c00e9f6
BLAKE2b-256 3335a86246662e0d0e6fc822a8249ab84a6a341c0ddf68ac52e827704014ed1a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 8a341e049c9aa24f79e6010e171feb85ce01c97dd740181caf6894023cc8107f
MD5 b040e10d95e50a1e0944989a46d7c13e
BLAKE2b-256 cf86aec4e6c1c77385726bb1b718a7dbbb817c2f12c31ed94c5d7755d772e2d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 12e7eb7a7ec0bca4359e883cc4c21832a5e84f1b8662966bfcf0de3feb54b19c
MD5 766a03153ad03877a27e1ef1fab51ffd
BLAKE2b-256 70022916210043ad71fb12c81777280462164f22dfc1a4a3b41f35f1000c401c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8bc15059537e8c02764ca2742955e3a4a276b762a681ffdfd11c9495281be857
MD5 f4a161bba4579dd76c8f32d377b70a6f
BLAKE2b-256 bfa24f42df433476c0fbfab90f3eb10710a1262a4ccbe0dcbb72df5a9b815bc4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 71b15d9d5ce7a5f3471c22b245e85f79866e72a360b5b993427f25940e4abb98
MD5 deb400794cf2e5d4b9db8580e1f146f9
BLAKE2b-256 9c5b0b3b964ed19325fa1409a28c6e55a9f9d4a74328c6d793f6eba9beba0b81

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 d63f893a8c3750463bd9072651641081b9a2aa1707feca49b00bd9e791bdd6ae
MD5 f4540e148b8bc2f81ef47ca497c0b11d
BLAKE2b-256 3d2f68fa5e8bb9ae61ff2f8811d08d1424e42511e2ef354b1ecdf7b94dd77652

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 47c4687f16fc78085591a5070e32626a4e6db25668505dc028a033df94b9f7c7
MD5 04ffc1600c2649b450d06b715a8558ff
BLAKE2b-256 9ac1e5149c0997317acc4a471bb110820ae874b8adf82ade4a476dee9ba9ecbf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 561b3c07235b1ecd212549a5093340b5c4f57c3e0d84c14424ddb45b980c85ad
MD5 966ca89ce502105cb54e8919463ade72
BLAKE2b-256 5df5520795dc5ecfb9ed57a9534187eeb20af0be449d52e62f7c279eef0cdcf9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2371740d29cc29698298c6bdd271236148b2aa3050f78f735237d0d5f7639687
MD5 eb7fbdc302bc8473e0401abd6649c1a5
BLAKE2b-256 79e24400e140a53792ba53f7c7af9825fc26565733930687a2d405413b09e7d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a41-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c228a1b712ac21fb9471c6f0faee485760788926b1784fa45a7079dbb9ccb4e5
MD5 5c07e139ba0bd3e19f79524175c53f84
BLAKE2b-256 7cac1c58fd77ba817f9cb2275438a13dd2c7e1bff3664de847e2cccf1dfee6b6

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