Skip to main content

indexio

Lightweight semantic indexing and retrieval for project knowledge sources for prompt and context engineering.

Indexes document sources (markdown, code, etc.) into a ChromaDB vector store and provides semantic search. Standalone library — no knowledge of projio or other ecosystem packages.

Install

pip install indexio
# or editable from source:
make dev

Quick start

# Write a starter config into your project
indexio init

# Build the index
indexio build

# Query
indexio query "how does authentication work"

# Show store status
indexio status

indexio status compares the current source matches to the last build manifest and groups sources into buckets such as indexed, changed, and not yet built.

Chat server

A built-in RAG chatbot backend and embeddable widget.

indexio owns the chat API, demo page, and widget assets. projio owns site-builder-specific mounting for ecosystem docs sites.

# Install with chat support
pip install indexio[chat]

# Start the chat server
indexio serve

# With a custom LLM
indexio serve \
    --llm-backend openai --llm-model gpt-4 --llm-base-url https://api.openai.com

Open the URL printed by the server, such as http://localhost:9100/. If that port is already in use, indexio serve will automatically pick the next free port and print it.

Embed the widget directly in any docs site:

<script>
  window.INDEXIO_CHAT = {
    apiUrl: "http://localhost:9100/chat/",
    title: "My Docs Assistant",
    storageKey: "myproject_chat_v1",
  };
</script>
<script src="http://localhost:9100/chatbot/chatbot.js"></script>
<link href="http://localhost:9100/chatbot/chatbot.css" rel="stylesheet">

Settings are also configurable via INDEXIO_CHAT_* environment variables.

If your project uses projio to build docs sites, prefer enabling chatbot injection there instead of wiring the widget tags by hand.

Python API

from indexio import load_indexio_config, build_index, query_index

cfg = load_indexio_config(".indexio/config.yaml", root="/path/to/project")
build_index(config_path=".indexio/config.yaml", root="/path/to/project")
results = query_index(config_path=".indexio/config.yaml", root="/path/to/project", query="embeddings")

Metadata

Release files for indexio 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for indexio 0.1.1
File Size Uploaded Provenance Actions
indexio-0.1.1.tar.gz 44.5 kB Without provenance Details for indexio-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for indexio 0.1.1
File Interpreter ABI Platform Actions
indexio-0.1.1-py3-none-any.whl Python 3 none any Details for indexio-0.1.1-py3-none-any.whl

Total release size: 82.9 kB

Release files / indexio-0.1.1.tar.gz

Download URL indexio-0.1.1.tar.gz
Size 44.5 kB
Tags Source
SHA-256 checksum
How to use checksums
236583966dea0175fb1bfe780b84632511a056e3e2186573696c60d4dd707d35
BLAKE2b-256 checksum
How to use checksums
1b326178f870060e161688e4389c0d110ef7f920cf51837c6f653b8b67bee16e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Release files / indexio-0.1.1-py3-none-any.whl

Download URL indexio-0.1.1-py3-none-any.whl
Size 38.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
95dc600bcc087237f7c59d7de605555f3c36802e5fda3a4836167b4cdc6d57b9
BLAKE2b-256 checksum
How to use checksums
dcaef447aef30671f46e0379cd546dfbbe83edc07fec8f613b7445c91455bec4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Security for indexio 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page