# Connectors overview

> **CocoIndex v1.** This page documents CocoIndex **v1** — a ground-up redesign from v0. When writing code, ignore any v0 flow-builder DSL or deprecated decorators.
>
> Source: https://cocoindex.io/docs/connectors/ · Docs index: https://cocoindex.io/docs/llms.txt · Agent skill: https://cocoindex.io/docs/skill.md
>
> v0→v1 quick map — if you reach for these v0 symbols, stop and use the v1 form: `@cocoindex.flow_def`/`FlowBuilder` → `coco.App` + a `@coco.fn` main function; `add_collector()`/`collect()`/`export()` → declare target states (`declare_row`, `declare_file`); `cocoindex.sources/functions/targets.*` → connector APIs (`localfs.walk_dir`, `coco.ops.*`, `postgres.declare_table_target`). Full mapping + API reference: https://cocoindex.io/docs/skill.md.

A *connector* links a CocoIndex flow to an external system. It plays one or both of two roles:

- **As source** — imports rows into a flow, with change capture so only what actually changed is reprocessed.
- **As target** — exports [target states](/docs/programming_guide/target_state/) from a flow and keeps the external system in sync via incremental upserts and deletions.

Some connectors do both. Each page documents the APIs for whichever roles the system supports, under `## As source` / `## As target` sections.

## Sources

Connectors that feed rows into a flow.

| Connector | Also a target | Reads from |
|-----------|---------------|------------|
| [Local filesystem](/docs/connectors/localfs/)         | ✅ | Local files and directories, with live watch mode |
| [Amazon S3](/docs/connectors/amazon_s3/)              |    | S3 buckets and S3-compatible stores (MinIO, Tigris) |
| [Azure Blob Storage](/docs/connectors/azure_blob/)    |    | Azure Blob Storage containers |
| [GitHub](/docs/connectors/github/)                    |    | GitHub repositories via a GitHub App installation, memo-keyed by Git SHA1 |
| [Google Drive](/docs/connectors/google_drive/)        |    | Shared Google Drive folders via a service account |
| [OCI Object Storage](/docs/connectors/oci_object_storage/) | | Oracle Cloud object storage, driven by OCI Streaming events |
| [Postgres](/docs/connectors/postgres/)                | ✅ | PostgreSQL tables via `PgTableSource` |
| [Kafka](/docs/connectors/kafka/)                      | ✅ | Topics as live keyed maps or raw event streams |
| [Iggy](/docs/connectors/iggy/)                        | ✅ | Apache Iggy topics as live streams or maps |

## Targets

Connectors that export data out of a flow. They're grouped by the kind of store, but most also handle vector search.

### Relational and analytical

| Connector | Also a source | Notes |
|-----------|---------------|-------|
| [Postgres](/docs/connectors/postgres/)   | ✅ | Relational database with `pgvector` (ivfflat / hnsw) |
| [Apache Doris](/docs/connectors/doris/)  |    | Analytical database, HNSW/IVF vector + inverted full-text indexes |
| [SQLite](/docs/connectors/sqlite/)       |    | Embedded database, optional vector search via `sqlite-vec` |
| [Snowflake](/docs/connectors/snowflake/) |    | Cloud data warehouse — managed DDL, MERGE upserts, incremental deletes |
| [BigQuery](/docs/connectors/bigquery/)   |    | Cloud data warehouse with managed DDL, MERGE upserts, incremental deletes |

### Vector databases

| Connector | Notes |
|-----------|-------|
| [LanceDB](/docs/connectors/lancedb/)         | Embedded vector DB, vector + full-text (FTS) indexes |
| [Qdrant](/docs/connectors/qdrant/)           | Single, named, and multi-vector points with schemaless payloads |
| [Turbopuffer](/docs/connectors/turbopuffer/) | Namespaces with single or named vectors |
| [Valkey](/docs/connectors/valkey/)           | Search indexes with vector similarity (HNSW / FLAT) |
| [zvec](/docs/connectors/zvec/)               | Embedded, in-process vector DB with dense and sparse vectors |

### Property graph

| Connector | Notes |
|-----------|-------|
| [Neo4j](/docs/connectors/neo4j/)         | Property graph over Bolt — node and relationship tables, vector indexes |
| [FalkorDB](/docs/connectors/falkordb/)   | Redis-backed Cypher graph, per-graph multitenancy, vector indexes |
| [SurrealDB](/docs/connectors/surrealdb/) | Multi-model — normal and relation (edge) tables, vector indexes |

### Message streams

| Connector | Also a source | Notes |
|-----------|---------------|-------|
| [Kafka](/docs/connectors/kafka/) | ✅ | Produce messages as target states with at-least-once semantics |
| [Iggy](/docs/connectors/iggy/)   | ✅ | Produce messages to Apache Iggy topics |

## Beyond the built-ins

If you need a system that isn't listed here, implement a [custom target connector](/docs/advanced_topics/custom_target_connector/) as a building block of your flow.
