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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

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

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

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

File metadata

  • Download URL: cocoindex-1.0.0a35.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.0a35.tar.gz
Algorithm Hash digest
SHA256 b63ea64825d1d5d906da67e740b8db9f7e7dbb417a30832bedc584db50288234
MD5 a5b19a1cb9161606b8e9fb128a70dcaa
BLAKE2b-256 8944e0a601d9597d9e139aaa043683b9aa32465c0e7694a4c7d79bf6b0b081aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 c496af5bdc79a5d0d66416a24cfc89a53b895424d5e38ce9ae4c641abb365a4a
MD5 6fe8f184d37e04fcc78b68c220573125
BLAKE2b-256 bd6c611001aa0af7118a38ca3c198fc021d848b95ef55bf32e5389b681b80112

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9143e0c87e0f5e34f94e4749fca88d13b6f44266f5452673d64c2bae3b0f259b
MD5 61d64416d8bf2196a80174aae514276a
BLAKE2b-256 198e332db42804fd3964286ce5c69e2e834705a17877904be03ef6a9519fa1d4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d4a4178dd44eac9470fbcb8782cc2bfb69cc3b9440f780ae4c65f6dec8050f1b
MD5 a0b066140ba73a574f955b87a6d43142
BLAKE2b-256 42008d95db02b7477d419cc7250cc855186356a4139221074fb682192f2ae647

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22e39b94ff788b5576de13d0d840fd9b4295e10f91c6c7937a63c05fa2b048b8
MD5 c4e320167fbbbaf401577e28b69f561b
BLAKE2b-256 e81de2853770dd595427ab738e3c3085a1f3837bafc908e49a8188ae849bdd46

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 3cc67716ea651af5a1697daca9f41942051484377079a5efabaa85755afbfa21
MD5 db26f6780407949f90b187273f59d69f
BLAKE2b-256 e8bb83362385a8ce9829494379fb7447db92992caec129f7725270bb097d9e0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 32a48116ec84662679416d95a1c188800fa4f3225c3c0ed827f7208e9a3833c5
MD5 97c384b1732952fd87577fe8d0b0ce38
BLAKE2b-256 14a3115068ef04f8c24725464e7ffafeb2715d1a6a6152231d8a45e2d3b6f889

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 de778af957c7ce6d274701e5fff0eb1b2a0599e08243659e45c8d094e3e5de05
MD5 d862bcf699f82c9c33223f17e84a9473
BLAKE2b-256 da9249f0d7960bb2f42c0d08d2b9f05799de437b83845699e310aaeef0a62a00

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bb0570e8e8d764140f7e8ff52939c20f58952f05ba7dcaeaeb9ba9477ec249ee
MD5 07cb34e34a17174e1601fec9824a654e
BLAKE2b-256 5cdfade00da8bffcbef924707ab338fc141f2cdcd0f6f2b3c4e15cb79b4539b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a35-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3ae1fde464fc8d2265e21ff2cfd8cb71bba8ca0cf270a2412065ce753477291d
MD5 8440701fe01fb8682a3468c085a4cfa8
BLAKE2b-256 03a01945c344d67de07858eb6ff79fa20f8d87b319a884d937a630866be05577

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