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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

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

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

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

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a38.tar.gz
Algorithm Hash digest
SHA256 3bf165b74479ed42093b8bce491e50b6b6cec2f47770aeba9a1af0fc142ed0b9
MD5 93ff9596881a253e86c3a25acdd0198d
BLAKE2b-256 846591c7d103f2867d191c880d2517a947f455f1e9889c872136383c60e673d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 5ad7421b5f3f36220db299d7d0905a0f19fe6d2974a3702735988e2ffeb5a4f0
MD5 d76f1ec218fa7b564d65cab09b075c4f
BLAKE2b-256 9028f9ce38d0ea55b083bb45330613f92b9c164fcea68ea2edb55b84348edfcb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 94071078db8b57048f2bbd5be85db3cd1bc12d762100b5a5ab20077ca17c1fe7
MD5 3cacd75ab4f728223094afbd4bd3fff3
BLAKE2b-256 37592dbda51447f4f42dcaf3b57f338cc4ceef9e2782cd06f5283c2535e49186

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 828f4cd8c89103823e3d19d3035acd92e2818c6c7faed823f07b342b3d235855
MD5 c4d7c96104ae70fe586e43046ea7e363
BLAKE2b-256 87c16002b01a60ca174ec76a780902422e2b461853d86facd7a4346c9498ae2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a7dca0a59035299a9c627dde365c4e23fc3c95c865bd40956e723016c5dafe50
MD5 deb4e38f4e65309fd6250ec457893cf6
BLAKE2b-256 cfe43475f489f2a3dc99c51c3f4abcdbe130522f005401502f4b26bf8fb619f3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 702e363f71b6291b8412c3123a7fbbec5c66b8dad18aa83c80e7e4afe386fa6b
MD5 93e7da094c7e721fda0673432d377b98
BLAKE2b-256 7c5b9659e44ac909c9b9aafb05fd41eab01f146876728f26c3ab8f47fa34553b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5dc275f341f18e47962bbc6ce605231ab812cbab79c5ba3788dd91c6f1b84f16
MD5 3d1df1315e9968e86544f6f5652bfedc
BLAKE2b-256 c330874f83ad99aaf89bd984ed788ff94d87a8dcefe9bcfaab416f418fc527e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 25fe6d3c3367606d609f1789fc0861bceea2282a5ed87b9cc541722fab1d510f
MD5 640835f4793568200718aaff53e2cfa5
BLAKE2b-256 95d6a78de964374afda8e3d84fb80b1a035ff91ba8951db97e768397e758c991

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 051637c6828deec43d51c5674aed9d56279295d1f55ac240b50d73c27623af06
MD5 1f8e7635a19ea568a4e0d03d00aad5f6
BLAKE2b-256 5fde5d2c67eb06cb3bca8d90811910ac688d2b4abb1b1a6da3705cb53232906c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a38-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c0df90066bdc332bfc73eef6ff3ba6b728c988dd91f3144192bbeefc04918159
MD5 dd6cefb7d3a338b9787a1b8b79cba6af
BLAKE2b-256 6d42163e326e456876a4b1c20376e9a95f8500466dbc486ddc61300eec7b1e2f

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