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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.11+Windows x86-64

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

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11+macOS 11.0+ ARM64

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

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a45.tar.gz
Algorithm Hash digest
SHA256 d1deaaf98c917f09560075f5333382960b0302f00521dda868bbf64b98bb5779
MD5 8df25befc544c945a3e1c6022f35e527
BLAKE2b-256 23516a8d114608fdd84986a00f2af909868b695a8cf6b1753f98aebf60dcb953

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 09dba955cebc1aee6a46d4a9c0a15f8eb2e26b7288de508f4b08f3be916cd7a0
MD5 0da94498875afae71ff3f0b60ae382ca
BLAKE2b-256 c81cb64bace32d99495492f34350efe575d4e0b737cf53a207fe6d048fd5b6f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9dcfd89e3453b3331e886b14a5a8b83695d42644df68ddd4d7771757c43fb10a
MD5 9fcd58078268186a91a379487e5709c8
BLAKE2b-256 a04366efa00e1901be542a1bba59aa49310f2155e6eb1aaa4a6c8628e1a76929

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1ee65ce6dcd33daa69099f82a92740fad4ab79da42ec33b134b6824ea685f701
MD5 cb31aa304d42bcedf2071e963b154760
BLAKE2b-256 e54ce092b7b6cd7124f0c3f7c4eaf398853f860dc270764a95139f12e30b8d26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 819789363ef6392b98c2766690a4f2875854935f93ac8bbc7e0abcddb3a40f34
MD5 b8bedd3ee6541186b578c5c8ef03a384
BLAKE2b-256 fcfb500ae0805e14b9c70b0a1409914eff12bfd7d1dd507c7698ad4407a9ed50

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 9b54e04fbc9808124f4245728b64290309bc1cd2054536ebbc8d45128acf9c74
MD5 4faf1add1faefa4ff71b913c7b8d7535
BLAKE2b-256 8f4c9f40ea422cd372f52b1ecbe60548b45a7b7607c47c3f1bdb698a1255663f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ea56a60f4ad0b7320db2d4bfc3b3085d662a713ca2c8543d2abccceab8966464
MD5 9301b166d0e27212c0974af4b44eec9e
BLAKE2b-256 d09416472b561bede2a0c4de1d457f2deec0ddf594a33228790e0cce17f9a29a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 003c3ea06f280d47a8bf165999e8a2f9791086c2dc267f9b1b44ba7b9faa7219
MD5 f132a7bb67849f18cbd5ecdbe56536a3
BLAKE2b-256 e46fb92cf34a6aaab7fb44e30f01b1c1906e2175d0d8d24d1d32a083b764e531

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c4a9397b9f71adedd09c32902f53eb07639200196c40fb7f40dbc59ba9f4f7f0
MD5 80c5a49de1215a8115abfee358f14cb6
BLAKE2b-256 e608ba0103468e9adea111cb6d2ab8b872eaa6f649ac91613c28beb77c98b55d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a45-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f7dc6e1e74678dde0c3c78bce852e44732567211abb9bb66b586a8c9bd6529ac
MD5 ba20e64016ce3bfe90565dcfd8d98b7b
BLAKE2b-256 56166a41479558574f42e18c94966725d1cc5e123f7e944ef6537edcaa7b1f56

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