$ ./faq-chatbot live
An FAQ chatbot for your website that answers from your own documents
For small businesses, shops and clubs that answer the same questions every day. Your documents are searched in your browser, answers cite the exact passage, and the AI key is yours. When it works, download it as a widget for your own website.

$ cat features.md
- Reads PDF, TXT, Markdown and HTML files or pasted text, splits them into passages (questions stay with their answers) and keeps them in your browser (IndexedDB).
- Hybrid search: keywords plus an optional small embedding model that runs in your browser, so a question worded differently from your FAQ still finds the answer.
- Answers with numbered citations; click one to see the exact passage, file and page it came from.
- Your own key for Anthropic Claude (Haiku 5.5 or Sonnet 5.5) or any OpenAI-compatible API, or a local model in LM Studio or Ollama. Requests go straight from your browser to that provider.
- No key yet? It still shows the matching passages, without an AI answer.
- Export a widget bundle for your site: one script tag, your index as JSON, a search-only mode that needs no server, and a small PHP or Cloudflare Worker proxy so your key never reaches visitors.
$ cat why.md
I built the retrieval chatbot for Einfach Fahrschule, a SaaS for driving schools, where it answers students from each school's own documents. Most small businesses need the same thing for their FAQ, without a monthly subscription or uploading their documents to yet another service. This is a fresh, small version of that idea that runs in the browser: your documents stay with you, every answer shows its source, and the widget you export is yours to host.
$ self-host-it
- Requirements
- Static files, no build step: any web server works (ES modules, so not from file://). The exported widget needs only two static files; AI answers need PHP 7.4+ or a Cloudflare Worker for the proxy.
- Built with
- HTML, JavaScript, transformers.js (in-browser embeddings); optional PHP or Cloudflare Worker proxy
- License
- MIT
The repository goes public on GitHub soon. Until then, ask me for the code and I'll send you access.
Get the source