Build on the supported package contract
Use absolutejs-rag-vector-example through its supported public entry points.
absolutejs-rag-vector-examplev0.0.1betaDev ToolsThis demo is pinned to @absolutejs/absolute@0.19.0-beta.644 + @absolutejs/ai@0.0.2 + @absolutejs/rag@0.0.1.
# Private workspace project: ~/abs/examples/rag-vectorThis demo is pinned to @absolutejs/absolute@0.19.0-beta.644 + @absolutejs/ai@0.0.2 + @absolutejs/rag@0.0.1.
This example now demonstrates four backend modes in one repo:
sqlite-native
packaged SQLite vec0
mode shows as native_vec0
sqlite-fallback
owned JSON fallback path
mode shows as json_fallback
postgres
PostgreSQL + pgvector
mode shows as native_pgvector
pinecone
managed Pinecone vector index
SQLite only
This gives you:
sqlite-native
sqlite-fallback
SQLite + PostgreSQL
Start the local pgvector container (safe to rerun):
Then run the example with PostgreSQL enabled:
Stop the local pgvector container when you are done:
If you want container logs:
Docker is only the default local test path.
You can also point the example at a real PostgreSQL database:
Requirements:
PostgreSQL
pgvector extension available
permission to create the extension, or it already enabled
The Pinecone backend is enabled when both PINECONE_API_KEY and PINECONE_INDEX_NAME are set. The package (@absolutejs/rag-pinecone) does not auto-provision indexes — create the index in the Pinecone console first.
Create the index
In the Pinecone console (https://app.pinecone.io):
Name: anything (this becomes PINECONE_INDEX_NAME)
Dimensions: 1024 to match the demo's deterministic hash embedder default
(override with PINECONE_DIMENSIONS= if you create the index at a different dimension; the embedder generates whatever size you ask for)
Metric: cosine
Capacity mode: serverless is sufficient
Environment variables
Variable — Required — Notes
PINECONE_API_KEY — yes — Account API key from the Pinecone console.
PINECONE_INDEX_NAME — yes — Name of the index you created.
PINECONE_NAMESPACE — no — Logical partition inside the index (default: empty).
Open any page:
http://localhost:3000/react
http://localhost:3000/svelte
http://localhost:3000/vue
http://localhost:3000/angular
http://localhost:3000/html
http://localhost:3000/htmx
In the Diagnostics card:
Select SQLite Native
Confirm:
backend: sqlite
mode: native_vec0
Select SQLite Fallback
Default selected mode:
Force fallback:
Force PostgreSQL:
Run a search:
sqlite-native uses @absolutejs/rag-sqlite
postgres uses @absolutejs/rag-postgres
PostgreSQL is optional; the example still works without it
Windows arm64 support is still limited on the SQLite native line because upstream sqlite-vec does not currently ship that target
Outcomes
Use absolutejs-rag-vector-example through its supported public entry points.
Hardening checklist
Follow in order
This gives you:
cd ~/alex/absolutejs-rag-vector-example
bun devStart the local pgvector container (safe to rerun):
cd ~/alex/absolutejs-rag-vector-example
bun run pg:startScripts declared by this package manifest.