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)
| 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)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| 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.