|
|
|
Show HN: Open-source Perplexity clone one file back end, streaming answers
(github.com)
|
|
6 points
by anupsing_ai
62 days ago
|
|
I built an open-source research agent. You ask a question, it searches the web via Tavily, synthesizes an answer with an LLM, and shows the sources it used. Answers stream in real-time. The interesting part is the backend. It's a single JS file (~100 lines) that handles web search, LLM streaming, and per-user conversation history. No vector database, no Redis, no separate storage service. It runs inside a cell — an isolated environment with a built-in database, search index, and filesystem. The cell handles persistence and streaming natively, so the agent code only has to deal with the actual logic. Tech: Next.js frontend, Tavily for search, OpenRouter for LLM (Gemini 2.5 Flash default). Demo: https://youtu.be/jvTVA7J925Y |
|
Curious how you're handling conversation history at scale though — storing it per-user in-memory works fine for a demo, but what happens when the cell restarts? Does the built-in database persist across restarts or does history reset?