Everyday inventionsWorking MVP2026
A website assistant that works with zero setup, and gets smarter when you give it a key.
- keys or services needed to run
- 0
- keys or services needed to run
- knowledge entries in the first deployment
- 20
- knowledge entries in the first deployment
- engines behind one chat interface
- 2
- engines behind one chat interface
The problem
What people put up with
Adding an AI assistant to a small site usually means an API bill, a vector database and a privacy policy update before it answers a single question. Most small sites give up, and visitors are left searching the page.
The odd angle
The insight
For a few dozen well-written answers you don't need a language model to find the right one. Term-frequency vectors and cosine similarity are enough, run in a few milliseconds, and keep every question on your own server. The model becomes an upgrade, not a requirement.
The approach
How we built it
- 1
Retrieval with no dependencies
Knowledge entries become term-frequency vectors over a shared vocabulary, with extra weight on keywords. A question is turned into a vector the same way and ranked by cosine similarity.
- 2
One interface, two engines
The chat endpoint streams from OpenAI when a key is set, grounded in the knowledge base. Without a key, it streams the local answer through the same stream, so the experience doesn't change.
- 3
Feels instant
Answers arrive as a stream of text deltas in a glass chat drawer, with suggestion chips so visitors know what to ask.
What it does
Features
- Works with no configuration and no API key
- Optional OpenAI streaming, grounded in the same knowledge base
- Streaming answers with suggestion chips
- Knowledge base is a plain TypeScript file anyone can edit
- A clear upgrade path to real embeddings and a vector store
The hard parts
What fought back
Knowing when it doesn't know
Keyword retrieval always returns something. The hard part is a sensible threshold, so a low-scoring match becomes an honest 'I'm not sure' instead of a confident wrong answer.
What's next
On the roadmap
- Swap in real embeddings for larger knowledge bases
- A one-line embed script for any website