freshcrate
Skin:/
Home > Frameworks > cocoindex

cocoindex

Data transformation framework for AI. Ultra performant, with incremental processing. ๐ŸŒŸ Star if you like it!

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

Data transformation framework for AI. Ultra performant, with incremental processing. ๐ŸŒŸ Star if you like it!

README

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
pip install -U 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

Define data flow

Follow Quick Start Guide to define your first indexing flow. An example flow looks like:

@cocoindex.flow_def(name="TextEmbedding")
def text_embedding_flow(flow_builder: cocoindex.FlowBuilder, data_scope: cocoindex.DataScope):
    # Add a data source to read files from a directory
    data_scope["documents"] = flow_builder.add_source(cocoindex.sources.LocalFile(path="markdown_files"))

    # Add a collector for data to be exported to the vector index
    doc_embeddings = data_scope.add_collector()

    # Transform data of each document
    with data_scope["documents"].row() as doc:
        # Split the document into chunks, put into `chunks` field
        doc["chunks"] = doc["content"].transform(
            cocoindex.functions.SplitRecursively(),
            language="markdown", chunk_size=2000, chunk_overlap=500)

        # Transform data of each chunk
        with doc["chunks"].row() as chunk:
            # Embed the chunk, put into `embedding` field
            chunk["embedding"] = chunk["text"].transform(
                cocoindex.functions.SentenceTransformerEmbed(
                    model="sentence-transformers/all-MiniLM-L6-v2"))

            # Collect the chunk into the collector.
            doc_embeddings.collect(filename=doc["filename"], location=chunk["location"],
                                   text=chunk["text"], embedding=chunk["embedding"])

    # Export collected data to a vector index.
    doc_embeddings.export(
        "doc_embeddings",
        cocoindex.targets.Postgres(),
        primary_key_fields=["filename", "location"],
        vector_indexes=[
            cocoindex.VectorIndexDef(
                field_name="embedding",
                metric=cocoindex.VectorSimilarityMetric.COSINE_SIMILARITY)])

It defines an index flow like this:

Data Flow

๐Ÿš€ Examples and demo

Example Description
Text Embedding Index text documents with embeddings for semantic search
Code Embedding Index code embeddings for semantic search
PDF Embedding Parse PDF and index text embeddings for semantic search
PDF Elements Embedding Extract text and images from PDFs; embed text with SentenceTransformers and images with CLIP; store in Qdrant for multimodal search
Manuals LLM Extraction Extract structured information from a manual using LLM
Amazon S3 Embedding Index text documents from Amazon S3
Azure Blob Storage Embedding Index text documents from Azure Blob Storage
Google Drive Text Embedding Index text documents from Google Drive
Meeting Notes to Knowledge Graph Extract structured meeting info from Google Drive and build a knowledge graph
Docs to Knowledge Graph Extract relationships from Markdown documents and build a knowledge graph
Embeddings to Qdrant Index documents in a Qdrant collection for semantic search
Embeddings to LanceDB Index documents in a LanceDB collection for semantic search
FastAPI Server with Docker Run the semantic search server in a Dockerized FastAPI setup
Product Recommendation Build real-time product recommendations with LLM and graph database
Image Search with Vision API Generates detailed captions for images using a vision model, embeds them, enables live-updating semantic search via FastAPI and served on a React frontend
Face Recognition Recognize faces in images and build embedding index
Paper Metadata Index papers in PDF files, and build metadata tables for each paper
Multi Format Indexing Build visual document index from PDFs and images with ColPali for semantic search
Custom Source HackerNews Index HackerNews threads and comments, using CocoIndex Custom Source
Custom Output Files Convert markdown files to HTML files and save them to a local directory, using CocoIndex Custom Targets
Patient intake form extraction Use LLM to extract structured data from patient intake forms with different formats
HackerNews Trending Topics Extract trending topics from HackerNews threads and comments, using CocoIndex Custom Source and LLM
Patient Intake Form Extraction with BAML Extract structured data from patient intake forms using BAML
Patient Intake Form Extraction with DSPy Extract structured data from patient intake forms using DSPy

More coming and stay tuned ๐Ÿ‘€!

๐Ÿ“– 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.

Release History

VersionChangesUrgencyDate
v1.0.7## What's Changed * feat(live_component): coco.auto_refresh + unify error-handling channel by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1995 * Fixes * fix(serde): register _frombuffer under numpy 1.x and 2.x paths by @shaiar in https://github.com/cocoindex-io/cocoindex/pull/2012 * fix(live_component): scope LiveComponentOperator to one process_live invocation by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1998 * fix(engine): close concurrent preempt rHigh5/31/2026
v1.0.6## What's Changed * feat(splitter): add Elm tree-sitter support by @nuthalapativarun in https://github.com/cocoindex-io/cocoindex/pull/1955 * fix(py): add context to Rustโ†’Python error messages for App operations by @nuthalapativarun in https://github.com/cocoindex-io/cocoindex/pull/1986 * docs(function): clarify change detection, memoization, and debugging by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1988 * feat(telemetry): add optional `application` label via env var by @gHigh5/18/2026
v1.0.4## What's Changed * feat(splitter): add Julia tree-sitter support by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1942 * fix(cli): share memo cache across script and CLI invocations by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1963 * fix(memo): plumb state_methods through dataclass/pydantic fields by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1971 * Better validation on column names * fix(security): validate SQL identifiers in postgres/sHigh5/13/2026
v1.0.3## What's Changed * feat(turbopuffer): add Turbopuffer target connector by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1934 * Neo4j connector + meeting_notes_graph_neo4j example (review) by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1932 * Add per-argument memo_key support to @coco.fn by @MrAnayDongre in https://github.com/cocoindex-io/cocoindex/pull/1888 * feat(splitter): add Svelte and Vue tree-sitter support by @georgeh0 in https://github.com/cocoindex-High5/5/2026
v1.0.2## What's Changed * fix(google_drive): give each request its own Http to avoid socket races by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1915 * refactor(entity_resolution): make ResolvedEntities a frozen+slots dataclass by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1916 * docs: show H4 headings in right-rail TOC by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1914 * docs(examples): add meeting_notes_graph example by @georgeh0 in https://githuHigh4/29/2026
v1.0.0## What's Changed * workflow: update version for prerelease by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1490 * chore: update docs release env and example dependencies by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1491 * fix: URL in docusaurus config by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1492 * fix: broken link for `docs_v1` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1493 * fix: use `docs-v1` instead of `docs_v1High4/22/2026
v0.3.38## What's Changed * docs: clarify that collect() accepts plain Python values by @batmany13 in https://github.com/cocoindex-io/cocoindex/pull/1803 * `docs`: Fix FTS documentation link in lancedb by @Haleshot in https://github.com/cocoindex-io/cocoindex/pull/1829 * fix: make module name consistent when loading user app via CLI (#1834) by @xyaz1313 in https://github.com/cocoindex-io/cocoindex/pull/1835 * docs: fix broken LanceDB FTS documentation link by @georgeh0 in https://github.com/cocoindeHigh4/20/2026
v1.0.0-alpha49## What's Changed * docs: scaffold Astro docs site for v1 (docs-astro/) by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1848 * docs: fix v1 Astro CLI doc EOF whitespace by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1849 * fix: eagerly register attachment providers for orphaned cleanup by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1844 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha48...v1.0.0-alpha4High4/20/2026
v1.0.0-alpha48## What's Changed * fix: pg source snapshot txn, add tests, remove pgvector dep by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1843 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha47...v1.0.0-alpha48High4/20/2026
v1.0.0-alpha47## What's Changed * refactor: improve msgspec serde robustness and migrate tracking records to Struct by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1838 * docs: reorganize structure and fix content issues by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1840 * docs: polish content, add FAQ, expand connector/ops coverage by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1841 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/vHigh4/19/2026
v1.0.0-alpha46## What's Changed * refactor: rename NotMemoizable to NotMemoKeyable by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1833 * feat(fn): add deps= to @coco.fn for external logic dependencies by @zherendong in https://github.com/cocoindex-io/cocoindex/pull/1836 * feat: add entity resolution utility with LLM-based pair resolver by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1837 ## New Contributors * @zherendong made their first contribution in https://github.comHigh4/17/2026
v1.0.0-alpha45## What's Changed * refactor: rename ContextKey `tracked` to `detect_change` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1823 * refactor: rename memo_key to memo_fingerprint by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1824 * refactor: default detect_change=False, restructure docs by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1825 * feat: make ComponentSubpath optional in mount() and use_mount() by @georgeh0 in https://github.com/cocoindeHigh4/15/2026
v1.0.0-alpha44## What's Changed * feat(cli): support --db and --app-name in show command by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1820 * fix(progress): fix PTY reader hang on macOS during exit by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1821 * fix(progress): refresh elapsed timer independently of stats changes by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1822 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha43.Medium4/11/2026
v1.0.0-alpha43## What's Changed * feat: add CocoIndex Claude Code skill by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1818 * fix(lmdb): retry read transactions on MDB_READERS_FULL with backoff by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1819 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha42...v1.0.0-alpha43Medium4/9/2026
v1.0.0-alpha42## What's Changed * refactor: active_children GC via Weak/Drop, stats readiness, live propagation by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1802 * feat: redesign progress reporting with PTY-based display by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1804 * fix: suppress noisy CancelledError log on Ctrl+C in live mode by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1805 * feat: add ManagedBy StrEnum for managed_by parameter by @batmany13 inMedium4/9/2026
v1.0.0-alpha41## What's Changed * docs: fix outdated TargetHandler protocol and add ContextKey guidance by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1800 * feat: add Kafka target connector by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1801 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha40...v1.0.0-alpha41Medium4/4/2026
v1.0.0-alpha40## What's Changed * Update README.md by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1794 * feat: support LiveComponent by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1795 * fix: respect @coco.fn(memo=True) on bound class methods by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1796 * fix: resolve flaky ownership transfer tests by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1797 * feat: LiveItemsView helpers for mount_each and Medium4/3/2026
v1.0.0-alpha39## What's Changed * feat: leverage msgspec and pydantic for deser instead of pickle by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1786 * Feat: Mount exception handler by @shannon06437 in https://github.com/cocoindex-io/cocoindex/pull/1754 * feat: target state ownership transfer between components by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1787 * Revise README for podcast to KG by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1792 **FMedium4/1/2026
v0.3.37## What's Changed * ci(deps): bump webfactory/ssh-agent from 0.9.1 to 0.10.0 by @dependabot[bot] in https://github.com/cocoindex-io/cocoindex/pull/1770 * ci(deps): bump j178/prek-action from 1 to 2 by @dependabot[bot] in https://github.com/cocoindex-io/cocoindex/pull/1769 * docs: add Docker + pgvector setup tutorial by @cdnsteve in https://github.com/cocoindex-io/cocoindex/pull/1772 * feat: add Novita AI as LLM provider by @Alex-wuhu in https://github.com/cocoindex-io/cocoindex/pull/1781 * Medium4/1/2026
v1.0.0-alpha38## What's Changed * feat: Batched functions support additional arguments by @Davda-James in https://github.com/cocoindex-io/cocoindex/pull/1766 * test(ctx): add tests for use_context() inside __coco_memo_state__() by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1782 * refactor: rename prev_possible_states to prev_possible_records by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1783 * chore(deps): pin litellm to >=1.81.0,<=1.82.6 by @georgeh0 in https://github.coMedium3/24/2026
v1.0.0-alpha37## What's Changed * chore: add field annotations to the `conversation_to_knowledge` example by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1776 * fix(ctx-plubming): plubming component ctx for state functions by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1777 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha36...v1.0.0-alpha37Low3/21/2026
v1.0.0-alpha36## What's Changed * example(conversation-to-knowledge): polish and optimize surrealdb target by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1775 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha35...v1.0.0-alpha36Low3/19/2026
v1.0.0-alpha35## What's Changed * example(conversation-to-knowledge): polish and minor fixes by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1774 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha34...v1.0.0-alpha35Low3/19/2026
v1.0.0-alpha34## What's Changed * Fix: flaky cli tests by @shannon06437 in https://github.com/cocoindex-io/cocoindex/pull/1747 * example(conversation-to-knowledge): initial version by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1773 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha33...v1.0.0-alpha34Low3/18/2026
v1.0.0-alpha33## What's Changed * chore: rename `by_processor` to `by_component` in `UpdateStats`. by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1768 * fix: use char offset for chunk slicing by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1771 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha32...v1.0.0-alpha33Low3/17/2026
v1.0.0-alpha32## What's Changed * feat: expose a progress watching API for `App` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1767 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha31...v1.0.0-alpha32Low3/15/2026
v1.0.0-alpha31## What's Changed * chore: upgrade examples deps to cocoindex-1.0.0a30 by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1762 * docs: update docs for `ContextKey` based connections by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1763 * fix: make `async_adapters` carry over context vars by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1764 * chore: assorted fix and improvements by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1765 *Low3/14/2026
v1.0.0-alpha30## What's Changed * feat: provide a mechanism for safe unpickle by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1760 * feat: use `ContextKey` as stable key for connections by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1761 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha29...v1.0.0-alpha30Low3/14/2026
v1.0.0-alpha29## What's Changed * fix(surrealdb): validate and escape input identifiers and IDs properly by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1748 * chore: align `embed()` between SentenceTransformer and LiteLLM embedder by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1759 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha28...v1.0.0-alpha29Low3/13/2026
v1.0.0-alpha28## What's Changed * Change security vulnerability report email address by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1688 * Add Ladybug (successor to Kuzu) as a target by @prrao87 in https://github.com/cocoindex-io/cocoindex/pull/1487 * chore: upgrade dependencies by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1710 * chore: upgrade more dependencies by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1711 * feat: tighten validation on table namLow3/12/2026
v0.3.36## What's Changed * fix(release): explicitly pin interpreter version for `maturin` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1755 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v0.3.35...v0.3.36Low3/12/2026
v0.3.35## What's Changed * fix: `--root-dir` required for lychee by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1728 * chore: upgrade dependency for examples by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1750 * refactor: move `output_positions.rs` to crate root by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1751 * refactor: move more elements out of `split` module by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1752 * chore: ignore alLow3/12/2026
v1.0.0-alpha27## What's Changed * feat: support attachment providers for target states by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1745 * chore: minor cleanups for db transactions by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1738 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha26...v1.0.0-alpha27Low3/10/2026
v1.0.0-alpha26## What's Changed * chore: upgrade examples deps to cocoindex-v1.0.0a25 by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1742 * feat: batch LMDB write transactions automatically by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1743 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha25...v1.0.0-alpha26Low3/8/2026
v1.0.0-alpha25## What's Changed * chore: upgrade examples deps to cocoindex-1.0.0a24 by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1733 * chore: update `upgrade-examples` skill by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1734 * feat: track destructive changes and lossy changes for target states by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1736 * Fix: Flaky cli tests by @shannon06437 in https://github.com/cocoindex-io/cocoindex/pull/1735 * feat: make sLow3/7/2026
v1.0.0-alpha.24## What's Changed * feat: allow use ContextKey for vector schema annotation by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1729 * feat: allow context dependency to be tracked for reprocessing purpose by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1730 * feat: make embedders take more arguments by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1731 * feat: `logic_tracking` option to control scope of logic change tracking by @georgeh0 in https://gitLow3/5/2026
v1.0.0-alpha.23## What's Changed * docs: revise for the latest async-first API change by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1712 * feat: support state functions for memoization by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1716 * feat: make LMDB max_dbs and map_size configurable by @Harry-kp in https://github.com/cocoindex-io/cocoindex/pull/1704 * Feat: Support dataclass and pydantic models for memo keys by @prithvi-moonshot in https://github.com/cocoindex-io/cocoiLow3/4/2026
v0.3.34## What's Changed * chore: upgrade dependencies by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1710 * chore: upgrade more dependencies by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1711 * feat: tighten validation on table names / column names for targets by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1714 * fix: make sure execution plan initialized after target setup done by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1715 Low2/28/2026
v1.0.0-alpha.22## What's Changed * chore: upgrade examples deps to cocoindex-1.0.0a21 by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1700 * fix: adding streaming to cli.py for show --tree command by @shannon06437 in https://github.com/cocoindex-io/cocoindex/pull/1702 * feat: go with async first API by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1708 * Fix: flaky tree test by @shannon06437 in https://github.com/cocoindex-io/cocoindex/pull/1705 * feature: add doris exporter tLow2/26/2026
v1.0.0-alpha.21## What's Changed * fix: parameter limit for postgres target by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1698 * chore: await pg upsert/delete together, stablize embed fn versions by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1699 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha.20...v1.0.0-alpha.21Low2/23/2026
v1.0.0-alpha.20## What's Changed * fix: typo by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1696 * feat: use dedicated thread pool executor for GPU workload by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1697 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha.19...v1.0.0-alpha.20Low2/23/2026
v1.0.0-alpha.18## What's Changed * feat: optimize for `coco_aio.map()` and support async iterators there by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1690 * feat: `get_object()` support S3 URI by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1691 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha.17...v1.0.0-alpha.18Low2/22/2026
v0.3.33## What's Changed * Change security vulnerability report email address by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1688 * Add Ladybug (successor to Kuzu) as a target by @prrao87 in https://github.com/cocoindex-io/cocoindex/pull/1487 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v0.3.32...v0.3.33Low2/22/2026
v1.0.0-alpha.17## What's Changed * fix: test_cli.py::TestShowTree is flaky by @shannon06437 in https://github.com/cocoindex-io/cocoindex/pull/1687 * feat: support S3 source by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1689 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha.16...v1.0.0-alpha.17Low2/22/2026
v1.0.0-alpha.16## What's Changed * chore: prevent function-level memo for function with child component by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1682 * feat: detect logic change and invalidate memo cache when needed by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1684 * feat: makes function fingerprinting for logic change detection more stable and support explicit versioning by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1686 **Full Changelog**: httpLow2/20/2026
v0.3.32## What's Changed * feat(local_file): add change notifications using notify crate by @LED-0102 in https://github.com/cocoindex-io/cocoindex/pull/1669 * chore: permit `CC0-1.0` license by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1671 * `docs`: incorrect python installation link by @Haleshot in https://github.com/cocoindex-io/cocoindex/pull/1672 * docs: add docs for the `watch_changes` field for `LocalFile` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1674Low2/17/2026
v1.0.0-alpha.14## What's Changed * feat: introduce `Symbol` to `StableKey` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1661 * Update README for Multi Codebase Summarization by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1662 * Feat/require target state keys to fit into type stable key by @Geoff-Robin in https://github.com/cocoindex-io/cocoindex/pull/1625 * feat: better enforce key type for targets and clear debug prints by @georgeh0 in https://github.com/cocoindex-io/cLow2/13/2026
v0.3.31## What's Changed * fix(examples): clean up SEC EDGAR tutorial for end-to-end demo by @tomz-alt in https://github.com/cocoindex-io/cocoindex/pull/1650 * sec example assorted updates by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1648 * feat: enable `PYTHONASYNCIODEBUG` for python tests by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1646 * chore: add hooks for Claude Code by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1652 * feat: Add PineCoLow2/12/2026
v1.0.0-alpha.13## What's Changed * feat: Add PineCone as Target Connector by @prithvi-moonshot in https://github.com/cocoindex-io/cocoindex/pull/1556 * refactor(ops-text): move text-related utils to `ops_text` crate by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1655 * docs: add ollama as embedding providers by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1656 * merge: main into v1 by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1657 * feat: use Rust's efficieLow2/10/2026
v1.0.0-alpha.12## What's Changed * fix(doris): connect redirected backend address with a reachable address by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1642 * fix(examples): clean up SEC EDGAR tutorial for end-to-end demo by @tomz-alt in https://github.com/cocoindex-io/cocoindex/pull/1650 * sec example assorted updates by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1648 * feat: enable `PYTHONASYNCIODEBUG` for python tests by @georgeh0 in https://github.com/cocoindex-io/Low2/10/2026
v1.0.0-alpha.11## What's Changed * update readme descriptions by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1633 * chore: upgrade examples deps to cocoindex-1.0.0a10 by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1636 * chore: update skill to upgrade example versions by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1637 * fix(release): 3.14 freethread build on manylinux by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1638 * fix: make sure inLow2/8/2026
v0.3.30## What's Changed * fix(release): 3.14 freethread build on manylinux by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1638 * fix(doris): connect redirected backend address with a reachable address by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1642 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v0.3.29...v0.3.30Low2/8/2026
v0.3.29## What's Changed * example images by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1528 * chore: upgrade `uv.lock` by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1533 * [docs]fix tab style by @badmonster0 in https://github.com/cocoindex-io/cocoindex/pull/1539 * feat: clean up tracking metadata and target data for stale sources by @thisisharsh7 in https://github.com/cocoindex-io/cocoindex/pull/1468 * `docs`: remove (redundant) unnecessary quick start link byLow2/7/2026
v1.0.0-alpha.10## What's Changed * feat/specific_db_schema_for_internal_tables by @Geoff-Robin in https://github.com/cocoindex-io/cocoindex/pull/1459 * `ci`: replace invalid dependabot > pre-commit section by @Haleshot in https://github.com/cocoindex-io/cocoindex/pull/1580 * feat(lancedb): add VectorIndexMethod support for HNSW and IVF Flat indexes by @majiayu000 in https://github.com/cocoindex-io/cocoindex/pull/1409 * ci(deps): bump peter-evans/create-pull-request from 7 to 8 by @dependabot[bot] in https:Low2/7/2026
v1.0.0-alpha.9## What's Changed * examples: use stable id and upgrade cocoindex dependency by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1604 * docs: id gen clarification, multiple environments by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1605 * feat: allow accessing context objects outside processing components by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1606 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha.8...v1Low1/31/2026
v1.0.0-alpha.8## What's Changed * fix: CLI doc by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1599 * feat: support vec0 virtual table for sqlite by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1601 * feat: support stable id/uuid generator by @georgeh0 in https://github.com/cocoindex-io/cocoindex/pull/1603 **Full Changelog**: https://github.com/cocoindex-io/cocoindex/compare/v1.0.0-alpha.7...v1.0.0-alpha.8Low1/31/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

airbyte-agent-connectors๐Ÿ™ Drop-in tools that give AI agents reliable, permission-aware access to external systems.v0.1.226
airbyte-agent-sdk๐Ÿ™ Drop-in tools that give AI agents reliable, permission-aware access to external systems.v0.1.226
langgraphBuild resilient language agents as graphs.1.2.4
MeowKitProduction ready. AI Agent Workflow System for Claude Codev2.10.2
awesome-agentic-engineeringProvide a curated list of tools, resources, and best practices for adopting AI-driven autonomous software development with agentic engineering.main@2026-06-02

More in Frameworks

ctranslate2Fast inference engine for Transformer models
schemathesisProperty-based testing framework for Open API and GraphQL based apps
spec_driven_developSpec-Driven Develop is a platform-agnostic AI agent skill that automates the pre-development workflow for large-scale complex tasks. It is not a framework, not a runtime, not a package manager โ€” it is
DrasilGenerate all the things (focusing on research software)