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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

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

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

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

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a40.tar.gz
Algorithm Hash digest
SHA256 ef07b235dbe8e1b1705bf562a4ac427929c5d9e7a0211e4a4c3da3cacf9f6233
MD5 9e86e0f9fdab6a8e9c1a0e5147df1f9d
BLAKE2b-256 5bdfc6e811ebd0023154b219406feb0f1c13aaf871b3914898ff5c6eea7f2d94

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 97edc4ee67e344c57db4e0b2fc8a269ea1d53d38381df063dde10b8a7490b886
MD5 b17c88aa0745e20d89017c94b75bd303
BLAKE2b-256 36b0d5481a21e3dd5c31c4f089342ea95dad8b0ab1130d1381521eb17ee3a18f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1c92d3ac26991519a0bbf0bd1933c2663a21a3823a6e42231df6835d2262d891
MD5 8ce289148d4a8e2ed96d77ace926dc19
BLAKE2b-256 28daa39b79a5a247321b785a29185a2b06e6708007eae4b2afbbd7669b400870

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 aab5e45aadde796402f3960d7a1a60a5641f5d9705ba1461890502030aee508b
MD5 86f2946d92d652db58c03ff08499212a
BLAKE2b-256 3231d757af9aef7cf0322fb26ab4961c2e395297b4272fc368440a15b77d8dd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 407bede0c22fbafadf6bbb94f4170458daa964293798ea83f98e2e7d3cc85b6d
MD5 f14eaa48c9d37cdbe9d54863dc2b5ef2
BLAKE2b-256 e14ae4c292754bc55a2baa7ce2e158b89287fa704d4796f5b9a5659ed6e4a841

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 34e236058dbe31d1eeaa91223e0a50827e5c33591514f1c5c540ab0f87556e33
MD5 24d00c3fa818220df7a04dcc2acea21e
BLAKE2b-256 01b6f0a633c0271fc6d89a0c447f36fbec94bffedc2ff49b85ea8be43ed87be5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 267485104ed2e0882d9cdc5044524d3e6ae0b92c462762306db00e8ef4b30d07
MD5 b33de1a33817a46d4c4b9c8a430336bb
BLAKE2b-256 d74bf051fa1ee99da60905037dfcaa055f8f41c28974dbc3a2b5cc875da29088

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 151b4217e09cbebd38a88402f51e74cce7ba21c9abb790773baaf32f0244436f
MD5 27da2d1e39e472da164b068676e3617b
BLAKE2b-256 8d2a683ebbe246a67444822eb8b4d3f0b4f23662acc2e6a016fa3146f0169b21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1a9cf220e7eed87d435a81b76e8de64bd6fb1cb78bf636c6d01b94db072ab667
MD5 39b6a964f3b426bda7eb3214d8388f86
BLAKE2b-256 f3d35d8b2c69777ed6a6238809c00d1b28d1dd0fe7ea05f72f843c9b7886b05c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a40-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e788bff8bdc98de4096f16534085b394c88af573f584b48fd09ef38cf8405bd4
MD5 f10cf0c5a56e8bd3a9181ba4540a6bfd
BLAKE2b-256 0d1194286108d3fe98fccd414f5a67da24d6816e04777fa773a5515910cf112d

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