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.0a19.tar.gz (251.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.0a19-cp314-cp314t-win_amd64.whl (6.4 MB view details)

Uploaded CPython 3.14tWindows x86-64

cocoindex-1.0.0a19-cp314-cp314t-macosx_11_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

cocoindex-1.0.0a19-cp311-abi3-win_amd64.whl (6.4 MB view details)

Uploaded CPython 3.11+Windows x86-64

cocoindex-1.0.0a19-cp311-abi3-manylinux_2_28_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ x86-64

cocoindex-1.0.0a19-cp311-abi3-manylinux_2_28_aarch64.whl (6.1 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

cocoindex-1.0.0a19-cp311-abi3-macosx_11_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

cocoindex-1.0.0a19-cp311-abi3-macosx_10_12_x86_64.whl (6.1 MB view details)

Uploaded CPython 3.11+macOS 10.12+ x86-64

cocoindex-1.0.0a19-cp310-cp310-manylinux_2_28_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

cocoindex-1.0.0a19-cp310-cp310-manylinux_2_28_aarch64.whl (6.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

File details

Details for the file cocoindex-1.0.0a19.tar.gz.

File metadata

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

File hashes

Hashes for cocoindex-1.0.0a19.tar.gz
Algorithm Hash digest
SHA256 755541b6168fa3b81ca36465f706a6bfa5e7815d96853b14959c4fc7f66c41e5
MD5 a5edd710d48e20dfc7b7789d4f96c877
BLAKE2b-256 9e987f57e4206837d1e5ceee43714513549e396530cddbb57572fdce7749ab2f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 1d099c9e5d039445dd2cb18d91751a30f512551315252bbbd1ee8fd2c47731d0
MD5 c101dc2cd282136e3e41f9248093dcb5
BLAKE2b-256 7078dcd934d063c48eb92c8aa28d3710c171e832d59c6d08e66d7f34dafec7ae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 460613a45783522e6a7bb033e2ee3c5690ceb0aeb972f1b85ac8ad24209b5417
MD5 e38f0181123f23331fd55bdc91e9abe1
BLAKE2b-256 11fddf25c563d6d3397f0db28455ca4824036f3509455a73dae37c08b6872d29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 4c062e8e639be5d6ea2ce562c7b50e1502e9a15fdc3c7d733ce5c89a0248c4f4
MD5 b600eea1bb756fe10dab78d3eb07d2a3
BLAKE2b-256 e049493cff7830987672d39fac3405e8ee46e5ae56f32745b74cb02c0e21055a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2a3ad626f644b8c3d8606024941f9f0b8835b2a578607ec5e90b498032ced66e
MD5 5d14d590f85962c690591314bff8290b
BLAKE2b-256 8b531fc855970b44d26986b9d78a129259f50791a9a090d0112fb7fb43e3a309

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2efef462e8a846e8f7321ca4cad1de0ad6259a28c442c908e7bb025ca833b638
MD5 30014f625987d78b4ef4cd52f34f999d
BLAKE2b-256 77b238dbe2abc5de1809596f5ff8f331ada0b76fc0de17270e58444f9ba44934

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83a0e668ec89c016a6b85d72a1626e1d81517be33a02386359a6c0064ff5d34f
MD5 44b23b69621b5a19d168d5ff1e1bf73e
BLAKE2b-256 98ef5889d232c0a10506a61411529127994a0dd7f1867566b02597bc7249dfa7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 30817cbc306f1fb953dd9ee7822084af856da3a27cc14f3cdeee2dce824ddf14
MD5 d68c6771700ad321d6b5099469ea33d3
BLAKE2b-256 a18200b2b45447711fac80f670af13f9a472d1eeeb95e648017f42171f5d5f61

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a19-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6c02be16d1bb585a228abee7261e7921fb5f8ea1f5f43cdc8fbb47f209f76536
MD5 c62b2d0811d4faac59f30f6f45f11a96
BLAKE2b-256 36509448233e3244d7bab18d78dbf123cb79cc7f8f15ed2d50ebb40f1ca467f4

See more details on using hashes here.

File details

Details for the file cocoindex-1.0.0a19-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cocoindex-1.0.0a19-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fd66ceb86a8838d134be80e952d2b3aa6910877621f2d21b6bf222fed4cb1b25
MD5 1e39ddafd02af30001d49ae7b2c1ba6a
BLAKE2b-256 af742c4d260c80fc51a729df81bbda6cd8f0a1cc4a240232ea72af819ac3f883

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